WIP: Server-side changes for commands.

The server stores the recognized commands in a 'commands' table,
and keeps track of which devices implement which commands in a
'device_has_command' table.

The server issues a push notification for the device to trigger
a command and saves the context of the command (that is, command and
arguments) in memory waiting for the device to fetch it.

TODO:

Let device register/update the commands it implements
WIP: Mock persona to make the server easier to test.