AR::RecordNotSaved & RecordNotDestroyed from save!/destroy! should include an error message

When calling `AR::Base.save!` or `AR::Base.destroy!` and raising one of the exceptions, give a meaningful error message so that people can easily understand why it's failing to save/destroy.

cc @arthurnn @rafaelfranca
Any word on this? I'm more than happy to change the massage to `Failed to save the record. Perhaps one of the before callbacks returned false?`, but I strongly disagree with not mentioning why at all.