Allow users to create Tools

:construction: :rotating_light: :construction_worker: :rotating_light: :construction:

This is current in progress, and it is kind of a beefy PR.

This introduces the `Tool`, a way for folks to share their various tools and plugins on Supermarket.

Trello card: https://trello.com/c/oV2dAj7h

The todos lives in the Trello card. :smile_cat: 
If they are not converted to arrays it fails because one is of the type `ActiveRecord::Associations::CollectionProxy` and the other is of the type `ActiveRecord::AssociationRelation`. Maybe this has to do with the way that `user.tools` is being loaded?