ByteArrayMonoid and StringMonoid now supports blocks (useful for block ciphers)