New controller to handle the searches and clean up of the messages controller

I made a controller to handle the searches so the MessagesController doesn't have to take care of them, also cleaned up the Model since the filtering and most of the search was done on the model.

Also I added the new routes, moved the views used by the search controller and edited them a little bit.
To render the table_display partial (or more like the whole page) if the search query returns 0 matches, otherwise it will throw me an exception saying there was no matches.