Added a new calendarObjectChange event.

This event allows people to specifically hook into CalDAV operations.
It allows you to get direct access to the VObject. Before this event,
you had to use beforeWriteContent and beforeCreateFile, and you were
forced to parse the iCalendar object.

This also makes scheduling a bit faster, because we only have to parse
the iCalendar/jCal object once.

Feature request by @kewisch
They are actually both requested. If it was a simple argument during call-time, you would be right. But I'm passing in an array, and PHP will actually through a E_NOTICE when I pass the array, and I didn't add the array element by-reference.

It feels weird and wrong to me, but for some reason this is how it works.