String#concat should preserve encoding. Fixes #756.

Directly ported from:
https://github.com/ruby/ruby/blob/ruby_1_9_3/string.c#L1962

Looks like the logic changed at these commits:

https://github.com/ruby/ruby/commit/443b1517cfbee8cf3a0c44f040939edf4f94b9a0
https://github.com/ruby/ruby/commit/ad4b53b3b3ccc9be16a31435f7bed8bf1533362a