issue #29: extract Module from Provider into an interface, as starting in Dagger 1.0 modules cannot extend abstract classes