Added repository pattern to project