(QENG-912) Beaker 1.14 breaks PE Puppet Acceptance

- seems to be an issue with string encoding
- ensure that we convert from current encoding to utf-8, doesn't mangle
  utf-8 strings and correctly converts binary strings
minor nit, there's a version of `encode` that doesn't require the source encoding to be specified (since the string already knows what its encoding is).