Built a new constructor and more tests to go with it