'Creates a StreamReader instance.
stream must be a file-like object open for reading
(binary) data.
The StreamReader may use different error handling
schemes by providing the errors keyword argument. These
parameters are predefined:
\'strict\' - raise a ValueError (or a subclass)
\'ignore\' - ignore the character and continue with the next
\'replace\'- replace with a suitable replacement character;
The set of allowed parameter values can be extended via
register_error.'

def __init__(self, stream, errors='strict'):

    self.stream = stream
    self.errors = errors
    self.bytebuffer = ''
    self.charbuffer = ''
    self.linebuffer = None
