Draft: Second attempt at refactoring ChanTarget
This is mostly the same as !646 (closed), but I've started working on the changes discussed there.
I'm not done yet, but I'd like some early feedback on the APIs in 29e243ce
Edited by Nick Mathewson