[Feature] Collection widget: trigger events on add/delete actions

Thanks to specific events, user can easily interact before/after adding/removing items from a collection (typical use: handle a min/max check, updating other fields (like a counter), etc...).

If event is prevented, action will be aborted (available for adding, deleting and deleting-all events).

Sample:
```javascript
$('#my_collection_container_id')
    .on('adding', function(e) {
       if (myCountVar > 5) e.preventDefault();
    })
    .on('deleting', function(e) {
       if (myCountVar < 2) e.preventDefault();
    });

```

@loostro Tested and ready to merge,