Fixes for Rails 3.2.* and some refactors

* use update_all instead of update_attribute in delete() and restore!() so update callbacks aren't run before/after deleting & restoring record
* update callback syntax

[edit 2/28/13: updated PR with pared down changes list]