Updated the bot constructor to cleanup binding.

Events are now bound to a prototype method on the Bot object correctly.
This makes the use of `this` a lot cleaner and removes the weirdness of
having `var _this = this;` in the constructor.
Updated the index script to include some comments.