Refactor (tidy up and document)
Refactor (tidy up and document)

- Rename some ExchangeType API fields/functions
- All documentation moved to top level
- Remove custom monitors/links and introduce Linkable instances
- Hide Exchange implementation modules
- Juggle imports / definitions
- Remove some compiler warnings

haskell-distributed/distributed-process-async,qnikst/distributed-process-async