Added fire method. Also attempted to improve comments and style.

Basing some style changes on the google javascript guidelines:
http://google-styleguide.googlecode.com/svn/trunk/javascriptguide.xml