PROTON-576: update String UTF-8 encoding to handle high range unicode characters / surrogate pairs

Applied patch from Dominic Evans with modifications by Rob Godfrey

git-svn-id: https://svn.apache.org/repos/asf/qpid/proton/trunk@1627019 13f79535-47bb-0310-9956-ffa450edef68