separate controllers, filters and main module

also separate tests for all of them
fix formatting issues

wrap at 120 chars
auto add newlines at end of files
change behavior for undefined in doIntersect

works exactly the same, but reads different
not sure if it's any better, though
use $watch instead of ng-change
make search box a separate controller
restrict searching

the search box can now be used to filter the offers on:
 - location
 - title
 - description
 - tags
Merge pull request #15 from deiwin/search_controller

make the search box a separate controller.