NOTASK feat(really-client): functional API

- convert API to be functional instead of OO
- finalized heartbeat
- offline handling
- add `reconnect` function

TODOs:
- needs testing
Merge pull request #12 from ikhattab/feat-functional-arch

NOTASK feat(really-client): functional API