Refactor specs into sub directories

* files smaller than 100 lines (Sandi Metz)
* allows logic grouping
* also test the class of Facts added to a (Provenance)Resource
  (needs some refactoring to clean-up dependency on ProvenanceFact)