Implemented the generic repository and removed the dynamic repository since the generic can function as both