added a method to take the currentQuantity as the new originalValue

This is useful when changing quantity and the UI needs to reflect that the new state has been committed.
gave subclasses readonly access to the quantityBehavior and a way to customize the committing animation