Start preparing MOP for Buf[T] and native arrays.
Further MOP support for Buf and native arrays.

This gets us able to write parametric roles whose parameterization
conveys the type to do layout with down to the VMArray REPR.
Avoid a couple of checking/reporting explosions.
Start replacing Buf.

Buf is now a role, as per spec. We also provide buf8, buf16, buf32 and
buf64 symbols in the setting, which are instantiations of it. However,
VMArray isn't quite smart enough to pack those as it should yet. Much
previous Buf functionality is still missing; it will be added back
before this branch is merged.
Add Blob, blob8 etc., utf8 etc.

The utf8 type doesn't work yet, due to missing REPR data serialization
in VMArray.
Get Str.encode working for new Buf implementation.

It now also returns utf8/utf16/utf32 types when appropriate, falling
back to blob8 for the rest of the cases. With this, both unpack.t and
pack.t now pass on JVM (will need some work on Parrot to get things to
work again there, though).
Add decode for new Buf implementation.

Again, will need some work to get this supported on Parrot too. Also
added .Str that works to utf8/utf16/utf32 types since they carry their
encoding around with them.
Start to get Buf ops back in place.

Since Buf ~~ Blob, they are now really blob ops. Done some tweaks to
try and adapt a little better to the new range of types available.
Unfortunately, the ops all seem to hit a multi-dispatch conflict.
Fix multi sort so Blob ~~ String is true.

Fixes the ambiguity issues that kept any of the Blob operators from
being reached.
Fix a thinko.
encode method should do the buffer creation.

This is 'cus we may need to pun a role to do so, which is best done
here, not inside of some op.
Correct a comment.
Update IO::Socket for updated Buf.
Update IO::Handle for Buf changes.
Bump NQP_REVISION.
Some exception pre-decls we need.
Merge branch 'nom' into rebuf
Attempt some binary socket IO fixes.
Make sure we initialize encoding normalization hash only once
Make NORMALIZE_ENCODING a bit faster