Add Tests

Adds tests. Increases test coverage from 30% to 70% :smile_cat: 
This is code from ToopherAPI that I refactored to use builders and factories. There wasn't a `null` check in the original code and I didn't want to add a null check for fear of changing the behavior, since we didn't have tests around it.