Calendar

This is a huge pull request. This adds an events calendar that was extracted from aelogica/aat.