Fixed comments, and ensure that required fields cannot be empty set. (Fixes #95 105 #114 #115)