Big Randomizer refactor

* Switching randomizers from using switch statements to using collection
selectors. Does not build yet because of this.  Class name randomizers
still use switch statements for alignment purposes, but otherwise, all
collections.
* Got concrete feats selector in there (not implemented)
* Overrode equals and hash codes for feat (makes equality checking in
feats generator easier)
* Introduced tests for spell mastery in feats generator
* Added tests for specific applications of feats
* Add metarace constant method to get al metaraces, including none
* Ability generator applies skill focus feats to skill bonuses
* All feats generator tests passing
* Human skill point bonuses applied to generated skills
* Refactor to improve rolls of skills, removing capped skills from the
selection collection
* Again, want to look at better way to do the force metarace boolean.
Somewhere on the interface, so something using it can set it?
* Changed bard's class skills test (it overloaded the NUnit test parser)