Users can flag posts as spam

* Create model and migration for spam flags
* Define relationships between Post, SpamFlag, and User models
* Create helper method for User model to flag a post as spam
* Create helper method for Post to determine if it's flagged by a user
* Add link to _post partial to flag a post as spam
* Add route and controller for spam_flags#create

https://trello.com/c/9V568pes

@ikalu @wowenstine @twentee7 
@halogenandtoast Would you call `exists?` directly from the view or wrap that method in the `flagged_by?` method?