modules now inherit AbstractModule