Add a group with a foreign ID
Add an endpoint for getting an object with a foreign ID

If you create an object with a foreign ID, there is an endpoint to get
the object's representation.

Instead of /api/:type/:uuid, it's at /api/:type?id=:id

Added middleware to extract the ID, and an endpoint, plus a test in
the group-foreign-id-test.js file.
Reorder the routes in api.js to put more specific stuff first
Test that the group endpoint fails correctly for missing or invalid ID
Get the group feed with a foreign ID
Add an endpoint to get the group inbox with a foreign ID
Document feed for foreign ID
Check that adding a user to a group with a foreign ID works
The inbox for groups with foreign IDs works
Test that documents endpoint works
Add info about foreign IDs
Document the foreign-ID endpoints for non-group objects
Add routes for likes, replies, and shares
Make the self-link use the foreign format
Use foreign ID format for activity object feed URLs
Expose the foreign-ID-format URLs for feeds
Dispatch on foreign-ID format for Websocket