agent: use harpoon-supervisor

The primary goal of this PR is to get harpoon-agent using the new harpoon-supervisor instead of harpoon-container.

With that in mind, I've attempted to limit the changes (behavioral, code) to the agent; we already have other issues which can address this (e.g., #8 and #54), and it would be nice to have all new code using the supervisor sooner rather than later.

Implements #48.
I can't think of any useful errors that would be returned here not covered by the readloop (connection closed, etc.).