Turn irc.js into a prototype object to facilitate testing. No more global state.
Cleanup and file renaming.

* Move irchandlers.js to irc-event-handlers.js
* use EventEmitter.on instead of EventEmitter.addListener to listen for events.
Remove the local copy of underscore, use the one from node_modules instead.
Set the dashboard up to use minified resources in production.

* Update static-resources with the deps list
* Update the Gruntfile to generate minified resources
* Add a "clean" task to the gruntfile.
Start work on the dashboard to clean it up.

* Put all code in dashboard.js inside of a self contained function
* Ensure there are no crashes if there no issues.
* Ensure the backend doesn't crash if there are no issues.
Start to hook up user registration, template layouts, static dir cleanup.

* Put all client side 3rd party js into lib subdir
* Add a layout page to use for other templates
* Hook up user registration
* Add a /register page
A full email registration now works!

* Add ability to type `<bot_name>: register` in irc and receive registration link.
* User sets time to send digest in registration page and then verifies address with Persona.
Add db.getUsersByUtcDigestHour
Adding lib/emailer/emailer to move logic out of bin/emailer
run the emailer process once per hour
Run the emailer once per hour at the top of the hour.

* Move lib/mailer.js => lib/emailer/email-client.js
* Update dependencies to require email-client from new location.
Put html email into a template, start to format dates in human readable formats.
Prepare the registration page for production.

* Use absolute paths for compressed resource names.
* Style is an absolute path as well
* update the grunt file to take care of the registration page
Clean up the emailing code.

* Add timezone_offset to the user model
* When getting all updates, do a >= query on `at`
* db.completeUserRegistration accepts a timezoneOffset
* Errors.message no longer defaults to type, it must be explicitly set.
* Add a load function to user.js
* When sending digest emails, show message times in user's local time.