added the version number

This should implement #7
Merge pull request #49 from bastibe/version-number

added the version number
Merge pull request #50 from bastibe/refactor-tests

Re-factor tests
Raise error if write pointer shall be changed in read-only mode

... and vice versa.
Virtual IO: allow write() to return None
Change order of arguments in read() function

This way it's possible to write this with positional arguments:

    sf.read('myfile.wav', 'float32')

It is no longer possible to write this, however:

    sf.read('myfile.wav', 1024)

This might be a somehow frequent use case, but it might be unclear what
the numeric argument means ('frames' or 'start' or ...?).
It will lead to clearer user code if we force a keyword argument, e.g.:

    sf.read('myfile.wav', start=31542, frames=1024)
Change default value of start from None to 0
Change a RuntimeError to TypeError
Add blocks() method and function
WIP tests
WIP test
WIP more blocks tests
WIP rw
WIP block 'w' tests