Implement `_was` and `changes` for in-place mutations of AR attributes

Should we change this now? If `#changes` returns `{ "catchphrase" => ["arrrr", "arrrr matey!"] }`, it seems resonable to expect `#attribute_changed?("catchphrase", from: "arrrr", to: "arrrr matey!")` to work as well, wdyt?