Added comments to model classes, and added unit tests