added more tests and add a Category Factory class. Almost complete but still need to try and refactor the for loops in some way.  Also added a Utils, maybe more everything here aswell