More testing for constructor&setter arguments
TDD: check beginDate doesn't end up after endDate

This should never happen -> IllegalArgumentException
Ensuring beginTime doesn't end up after endTime

however, this might be subject to change (see comments)

making tests pass, too
Rename AbstractActivity -> Activity

Previous naming redundant. However, consider returning to it if
a need for an interface "ActivityInterface" arises...?
initial skeleton of CourseModule class