Changed hook methods to pass a "sender" object, which is the object that
either is about to change or has changed. This may break existing code.
Modified spec to recognize sender argument for hook methods.
Added hook documentation, modified CHANGELOG and README to reflect new hook behavior.