The grand Guice injection fixup

This branch will get all the Guice changes to make DI work correctly and eliminate all the race conditions and have the startup and shutdown of the service controlled by the dropwizard framework.

The first patch is fixing all the lazy injection places, add explicit injection for everything that is referenced through Guice and uses eager injection everywhere.
This specific diff piece is misleading as it actually removes most of the code from `SingularityAbort`. The `sendAbortMail` call exists in the old code, too; however due to the nature of its relationship to `SingularityMailer` this was actually a circular dependency. Breaking this into two pieces (`SingularityMailer` and `SingularitySMTPSender`) fixes this.