Add support for removing an item

Remove either a single item by reference or all items matching a
predicate.
Remove volume and weight when removing items.

Update the internal count of volume & weight when removing items, also
avoid going negative.
Documentation update for VolumeConstrainedContainer