Implement protocol in API server

- Update the "status" component of API responses to denote "success" (rather than failure).

- Clean up the error type.

- Catch errors raised in server and return them to the client.

- Add basic client and server (hacks) to demonstrate these changes.
Keeping the queue in memory like this seems quite scary. I'd expect restarting a process not to destroy things at all times. Ideally a work queue in the database would be better.

This way we could have multiple retcon processes going for redundancy and they could just transactionally do work.