Use server-sent events

This is the implementation of #14 for harpoon-agent. It's also the first unit test :)

For now, the previous event interfaces still exist in the agent lib, and are still implemented by the agent's internal types. @peterbourgon, should those changes take place here? Or as a part of the scheduler changes?
Since we need `ev` outside the scope of the if block, I think it makes sense to keep them separate. This also let's the compiler enforce `=` instead of `:=`.