(#22129) force explicit file content to be treated as a bytestring

This replicates the implicit behavior in Ruby-1.8.7, and avoids chasing
down every location where a value is passed to `should=` and setting the
encoding there.

I don't have an environment with Ruby-2.0 and puppet set up to run the new spec, but from inspection, and testing the code manually, I think it will work.