Split data lines
Add `close` method
Bugfixes

END_STREAM is now an object, and compared by reference, so you can't end
the stream early by accidentally sending the string "endstream".

subscribe now subscribes the user *and then* returns the generator. This
helps testing, since the subscription has now been created and can be
ended without starting to read from the generator.

_publish_single was sending the same data for every line in the data.

subscribe was not sending any data. No idea how that slipped by.

Adding tests now to avoid further stupid problems
Add initial test
Add test for multiple users
Add channel test
Add docs to new methods
Add properties test
Test initial data
Remove closed subscriptions