Speaking of custom classes, does anyone else use them besides being a handy way to sort code? That's how I use them; all the extra rules about custom classes are just so annoying. Have you ever gotten a stack overflow error?
I've never had a stack overflow error, luckily. Anyway, custom classes are more than just dumping grounds for code... let's say you have a Car class. While you could go through the motions and write a lot of code for your doors, wheels, and headlights, you could just as easily create a Door / Wheel / Headlight class, not only improving the readability of your code, but also reusing your code in the best way possible.
General guideline is probably 'if you have to perform multiple functions on one object inside a class, create a class for that object'.