Message Ordering and Ordered Streams
Fixes #190 (closed). For real this time, and using a very async-friendly mechanism. This allows us to deprecate and remove the callback-based interfaces if we want to direct users to only interact via streams and futures.
Also mostly fixes #184 (closed).
Edited by Zeeshan Ali Khan