Added files n stuff
Generalised all repositories and factories