Allow additional sub-class flexibility and Moose::Role integrations

Hello Sir,

I have worked with Test::Class a bit in various settings, and I have made changes similar to this in production environments so that Test::Class could be extended a bit more easily.  The tests that I've written include some examples of what I mean.

If you could find time to take a look, review and send me some feedback, or even a simple rejection if you don't like this direction, then I would be delighted to make additional changes or keep this fork alive for others if they are interested in this behavior.

Also I was careful to make sure that there is no Moose dependency in the code.  It simply skips my tests if someone doesn't have Moose installed.  I did have it in there for a couple of commits, but whatever.

I can rebase and force push up if you don't want my intermediate commits.

Thanks for your time!

Paul Salcido