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.