A System with thousands of classes sounds really good.
I don't understand what you mean by "helper classes", though - can you please elaborate?
Definitely yes - We have few application specific numeric calculations, for which we use some specific set of formulae. We implement these though static methods. There are some fifteen of such classes with related methods. These are pretty straight forward classes not needing any instantiation.
I do understand after revisiting my architecture, that my architecture though performing well, doesn't leverage the need to accomodate more than one output device. After hearing the number of classes that you ppl use, I boldly step into breaking the system fewer classes more to accomodate this feature.