Merge pull request #10 from sealevelresearch/only-wrap-http-200-in-json-envelope

Only wrap HTTP 200 OK responses in an envelope
Factor out common code from TideLevels view

- `get_prediction_queryset`
- query parameter helpers into module

These are required by new TideWindows view, so factor it out into
helpers.
Wrote `split_prediction_windows` function & tests

Given a list of Predictions, containing multiple tidal windows, split
into the start & end prediction of each window.
Add `/predictions/tide-windows` view

- TimeWindowSerializer, which serializes a start and end prediction to a
  time window
- Update urls
- Add a ListAPIView called TideWindows, shares some functionality with
  TideLevels view
- Add tests