Add Tests

Adds tests. Increases test coverage from 30% to 70% :smile_cat: 
At least it's only in one place. :baby:

Miško (probably) says that constructors should only set instance variables, and the previously-existing constructor was extracting data from a JSONObject and could throw a JSONException. That constructor is unfortunately `public` despite only being used by ToopherAPI, so we can't get rid of it immediately, but imo it should be deprecated in favor of the Builder and Factory.