Support for Trait Sets and Projects

Projects are a top-level container for data sets
Trait sets are hierarchical groupings of traits
This changeset includes model classes, template support, search form and result support.