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


It seems like a shame to build this entire dict every time the function is called. Since the difference every call is just the href, why not build this dict once, as a global constant, then just add the href you need to a copy of the dict for the action?