Item types were put in for dotLRN. They are used to group items as Assignments, Classes, etc.
There is UI from the full calendar portlet to edit the types. It points to calendar/www/calendar-item-types
I used item types in my project management site also. Each project had a calendar and the calendar had item types start date, end date, task etc.
However, I wonder if using categories would be a better integrated long term solution.
Notifications from Calendar:
One wrinkle is you want the notification text to be generated when the notification is sent out, not when the item is created because the text or times might be edited. Currently the notification text is inserted when an notification is created. I think this is also a problem with the current notifications. I think that currently if someone writes a forum message, then edits it, a subsequent batched notification will email the original message, not the most recent edit. This will be a very noticeable problem for calendar. Nothing more useless then a calendar reminder service that doesn't let you know if a time or location has been changed!
When I had to send out updated calendars for a client project I used the cronjob package. Not sure if that is a good general solution but you might want to take a look at it.
Thanks for working on this! Calendar is an extremely important service.