Add a simple message bus implementation

The om bus provides a bus to be used on the client,
it merges messages from the server with any messages produced locally.

Remove the eavesdrop macro, that was barking up the wrong tree.
Use the message bus to pass vote message around, not a separate channel
Combine editable and focus-input components

They should never have been apart!
Add client id to client

This will help to differentiate messages from different clients on the server
Relay client id to server using compojure route
Feature title and description updating working now
Get vote updates syncing across multiple connected clients
Towards database-updating editable component