----------------
- Removed IObjectWillBeRemovedEvent, either use same event from OFS.interfaces or in case we use
AT, we could need to override manage_beforeDelete as it is called before IObjectWillBeRemovedEvent
in the OFS object removal machinery.
- Do only rely on `mayDelete` method instead of checking `Delete objects` and mayDelete method,
this way, we may handle case where user does not have the `Delete objects` but we want him
to be able to delete an element nevertheless, in this case, the all logic is managed by mayDelete.