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.