Basic infrastructure for publishing a REST API.

Copied unmodified from HybridCluster repository, except that:
1. Paging logic was ripped out.
2. Updated to latest Eliot APIs.
Make package externally usable.
Minimal example usage of the API package.
Lint fixes.
Update some dependencies.
Split testing infrastructure into private and public parts.
Delete some unused code.
Remove hybridcluster references.
Add RPM dependencies.
Merge branch 'http-api-886' into list-volumes-904