user Guice modules can either extend AbstractModule or implement Module