Moved calendar population functionality into Cal

Also changed some return values to const references in Event
Event stores commands before executing.

This should help make runtime looping and dependency calculation more
feasible than if the files had to be parsed more than once for different
elements.