Pass options.dup to generate_message().

AM:Errors#generate_message() clears optioms(:message) on first run,
pass dup so it is still here on successive run.  Enhance test to
exercise fix.
Bump version.
Merge pull request #551 from cherbst-medidata/feature/3.0_backport2

Feature/3.0 backport2