Adjust LifecycleModule to use a Multibinder to get the eager classes instead of object registration

This change required the introduction of the KeyHolder class as well because Guice does not allow you to bind Key objects.  You can bind an object that holds a Key object though, so that is what KeyHolder is.

This also bumps the java version up to 7.