[WIP] Reuse code

- [x] Rename classes to adhere more closely to clue/datagram and react/react
- [x] Remove unneeded/misleading methods
- [x] Documentation

Depends on clue/datagram#4.