I guess this is a problem with C++ constructors, namely you must not rely on execution order of constructors. You should do as little as possible in a constructor, certainly not reference any other class.
The Chrono constructor does a lot of stuff, including calls to lcd, which is definitely bad.
The correct way is put initialisation work into a begin() method, and you then explicitly specify the initialisation sequence by calling begin() methods in the right order.