Projects (first PR)

This PR introduces:
* The `Project` `ProjectItem` `SavedSearch` models
* The `PolymorphicGroup` module
* The `ProjectsController` controller, showing and creating `Project` instances from `Country`, `Region` and `ProtectedArea` instances
* The `SearchController#create` action, creating `SavedSearch` instances, linked to `Project` instances
The default for assert_difference is 1, so you don't have to explicitly state it when you just want to make sure it just increments by one, but it's probably a good idea to put it in explicitly for good test readability