Improve Active Model Dirty API.

I did some changes on this API:

* `reset_changes` becomes `clear_changes_information`. I believe this new name matches with what it is doing.
* `reset_*` is deprecated in favor of `restore_*`. This will avoid confusion with the deprecated reset_changes.
* `undo_changes` is now `restore_changes`. To match the behaviour of `restore_*`.

@dhh @chancancode
`def restore_attribute!(attr)`? :smile: