add channel manager

- extends `peer_worker.erl` to handle retrieving its own option state
- uses gproc for registration instead of port-> atom hack
- tests & README.md updated to match
- closes #22