Strange class problem

The constructor was "too big" - don't ask me why this is a problem.

It wasn't "too big". It was that the stuff that it did, it did when the rest of the processor was not ready for it to do things. Using the Serial instance, as an example, before the Serial instance has been created.