Add BlockStream
Fix BlockStream and use it for (de)serialization

The net.secloud.core.utils.BlockStream returned the bytes directly and
hence values in [-128,127], but the spec of java.io.InputStream expects
values in [0,255] and rates negative values as end of stream.