Update main.js API implementation

we need to send commands like:

channel.publish({
"type" : "js",
"js" : "bot.beep()",
"recipient" : "487db8bd-7db7-46b7-8eae-1edc5d063ead"
});

so we can do:

channel.publish({
"type" : "js",
"js" : "bot.beep()",
"recipient" : botId
});

and then inputting the code like bot.beep() into the text editor we can
just send this after clicking "submit"

channel.publish({ "type": "js", "js": evalCode.toString(), "recipient":
botId });

In the current build of the gigabots firmware, code can be:
"bot.beep()" --> plays a single "beep"
"bot.sing()" --> plays a sample of "Daisy Bell"
and with motor 'a' as an example:
"bot.a.rotateTo(100)" --> rotate motor 'a' to 100'
"bot.a.rtz()" --> rotate motor 'a' to 0'

publish message to channel for JS interpreter and then execution through the Gigabots API