Abort stream callback on error

If an exception is raised within the callback or if the wrong type is
returned, the stream is aborted instead of being called all over again.

Exceptions are not propagated to the main thread, instead, they are
printed to stderr.

See https://cffi.readthedocs.org/en/latest/#callbacks
WIP
FIXUP: move blocksize