Endpoint system

Implemented an endpoint system for easy actions in the front-end mapped to the back-end. See #181.

Technical debt:
* Front-end "actions" system is not implemented in TypeScript, yet. (I wanted to get this PR out ASAP)
* Permissions are not yet implemented.
* Parameter validation missing or weak in some places.

<!---
@huboard:{"order":28.625,"milestone_order":186,"custom_state":""}
-->