Enhancement: Allow users to extend Calendar classes and variables

Hi All,

I think providing end users an official mechanism to add custom modules to the calendar would be beneficial.

End users would have to be able to
add additional entries to the $activityList array variable within the Calendar class,
add additional entries to the $activity_colors array variable within the CalendarDisplay class

add additional entries to the returned array from the get_fields function in the CalendarUtils class

when these mechanisms have been put in place it would be trivial for end users to display their custom record types in the calendar