Revamp BytesType, add #encodeBytes & #decodeBytes.

These methods use `Data(In|Out)putStream` and
`ByteArray(In|Out)putStream` instead of `ByteBuffer`.
Revamp IntegerType adding #encodeI(8|16|32|64) & #decodeI(8|16|32|64).
Add ByteTupleType #encodeByteTuple and #decodeByteTuple.
Add ConstantType #encodeConstant and #decodeConstant.
Add BooleanType #encodeBool and #decodeBool.
Add RawType #encodeRaw and #decodeRaw.
Add FloatingPointType #encodeF(32|64) and #decodeF(32|64)