Week2

Here's the branch for week 2 including everything up to the first code review.
Single Assertion principle? I thought the 0, 1, many cases were taken care of in the tests for the search_by_title(search_term) method in the model layer?

Also, the other issues should be fixed now