Add base class.
Refactoring all class and add new constructors.
Create Service interface