refactoring server.js, adding tests

As a first step towards implementing the features outlined in #21, I've refactored the `server.js` file.

* I've started pulling search logic into a new class called `search.js`.
  * I've put unit tests around this using `nock`.
* I switched the search endpoint to a `GET` which I think is more appropriate:
  * there's a `params` key that can be set to specify `GET` parameters with polymer.
* I removed the JSON parsing logic from `server.js`,  this is not required as long as you set:
  * `headers='{"Content-Type": "application/json"}'`

@DeviaVir thoughts?