added placement copy to utf8
changed ref back to use const pointers