Break down search unit tests + a couple of fixes

This pull request contains:
 - Search tests have been broken down (Just trying out a different approach to unit testing as suggested by @btipling in #50)
 - A fix for an issue with the Query.hits function. If there were no hits this function previously returned None. It now returns 0.
 - Added a "live" boolean field to the SearchTest model. This is used for testing search filters. This change requires a migration.