Adding coverage information on tests
Adding student discount attribute, removing text attributes and moving them to templates
Changing the way to handle early and late price
Adding registration type and flag for student attendees
Extracting cost methods to a specific service, renaming some methods and
improving test coverage