Add JSON-API support

As requested in #827, this PR adds support for ID-based [JSON-API](http://jsonapi.org) blueprints. It shares code with #858 so I just forked from there, but I could rebase against development if you don't think #858 is a good idea. I did that mostly because JSON-API sort of implicitly uses plural model names and routes.

URL-based JSON-API is not yet supported, because the real benefit there is when dealing with associations. When associations are ready, switching to URL-based JSON-API would be nice - perhaps as a configuration option.