cool down improvements

- even if a task is always failing, don’t go into cool down unless it’s
failing rapidly.
Merge branch 'master' into hs_staging
Change the Singularity build to basepom.

Clean up the build and dependencies to use basepom.

The main change for the applications is that all of the executables
are building both a dependency jar and an application jar (which has
the "-shaded") qualifier. This allows depending on pieces of the
executable code without dragging in dependencies that are not needed.

The various checkers in the build make sure that all required
dependencies are properly declared and no duplicate classes sit on the
class path.
add missing healthcheck jar in runtime scope
fix eclipse luna java8 compiler complaint
remove extraneous stuff from singularity.yml
Merge pull request #214 from hgschmie/basepom

Change the Singularity build to basepom.
Merge branch 'master' into hs_staging
fixing style issues
ignore build.json file
Merge pull request #227 from HubSpot/hs_staging

Cooldown improvements
guice framework
add some missing c'tors for strict injection
Fix Guice injection.

- Execute Guice injection at run, not init time.
- Remove all autoconfig classes
- inject everything explicitly
Use a proper injected PropertyFilteringMessageBodyWriter

Replace the moving of the metrics registry through the servlet context
with a simple, injected Provider which gets bound by Guice. Use
ObjectMapper and Environment to provide necessary context objects.
guice framework fix
lifecycle wip