Added the implementation for GetAll in the GenericRepository and did some refactoring for both the unit tests and the production code