Add links to sub-resources and related actions in JSON responses.

Addresses #47 

Changes:
- Top-level `links` field in response gives available paths at the same level as the request.
- `links` fields within sub-documents describing resources give paths to actions on those resources.
- Make all non-empty responses from the server return valid JSON.

Documentation changes are in progress. Some example requests/responses are here: https://gist.github.com/lovett89/218bcac23e6c0ea52e41


Following on from the previous comment, this could be:

return [replica_set_link(rel, rs_id, self_rel=(rel == rel_to)) for rel in _REPLICA_SET_LINKS]