package custom spec tests

Here's my thoughts on what I was planning to do for spec tests - every possible variable combination by class.  Let me know if this works for you and I can work on it some today.

I'm breaking it up in to separate spec files because it is easier (for me at least) to add additional tests.  If you'd prefer I can put it all in a single spec file which means you don't have to mock the class and is more likely to complain if defaults change.  Either way - let me know.