Study and StudyPerson object

Closes #41 #55
Take two: Finally the big thing that all the tiny pull requests were for.

This is the study object itself, as well as the study person object that holds info on the people involved in a study. Please check this over and let me know if I missed any wanted functionality as well as the usual code stuff.

Also, the delete functionality is purposely not implemented currently. It will be hairy to do and not worth the time right now as the other objects need development an we aren't really deleting anything right now.
Now both raise IncompetentQiitaDeveloperError because you need at least one EFO attached to the study.