Feature messages

This is the messages part of the app, all the main development is done in the development branch, this one is to make single PR for individual parts/features to make it more easier.

This branch is for the message backend code, after this PR is merged I'll add the views.
After running the tests I saw I would have to use 

`before_action :find_message, except: [:create, :new, :index, :recent_messages, :pending_messages]`