Replace permission::require_write_permission with permission::require_permission across the calendar package
Rationale: permission::require_write_permission assumes the object creator to have write permission on the object. Instead, we should rely on permissions to be set correctly on the calendar. permission::require_write_permission also performs an additional query to retrieve the object creator.
It is unclear whether permission::require_write_permission makes sense at all as an api, but we leave this to a future post-release reform.