Add Stream.close()

See comments in #14.
Less restrictive error handling in start()/stop()/abort()

start() is now allowed even if stream is already started.
stop()/abort() is now allowed even if stream is already stopped.
Clarify comment in close(), don't assign NULL
Merge pull request #27 from bastibe/close

Add close() and relax error handling in start/stop/abort