Force UTF8 encoding for stdout and stderr in the shellp builtin

I tracked down the issue of the corrupted error messages when running the unit tests. The problem was in the builtin function `shellp`, which wasn't forcing a specific encoding on the pipes.

The PEVerify step uses that function to run `pedump` (on linux/mac), which is failing for quite some test cases, but the error wasn't readable (ie: *楍獳湩⁧敭桴摯⸠...*). One of the errors is for example:

    Missing method .ctor in assembly /private/var/folders/hl/nh1bjvfs5gvgplmz5t391fc80000gn/T/msbuild/testcase.exe, type Boo.Lang.MetaAttribute
    Error: Invalid CustomAttribute content row 2 Value field 0x0000015c
    Error: CustomAttribute: Invalid constructor
    Error count: 2

Although there are many more failing with:

    Could not load class with token 2000003
    * Assertion at class.c:5594, condition `!mono_loader_get_last_error ()' not met

Anyhow, I guess that enforcing a given encoding for the output pipes in the `shellp` does little harm and in return solves the issue with the junk errors.