Split overview.rst into separate files.
Expand and rewrite the guide docs.
Merge branch 'guide'

* guide:
  Expand and rewrite the guide docs.
  Split overview.rst into separate files.
Rewrite chatdemo to use a coroutine instead of callbacks.
Add a test for exception in websocket callbacks.
Fix outdated variable name in docs.