added:  'onSet' & 'onRemove' callback support

added:  'onSet' & 'onRemove' callback support
This is local to the remove method, so a simple name `var result` will suffice.