First try with Generics and Abstract Classes

GenericDao, AbstractGenericDao, GenericService, AbstractGenericService