moved to Tagged representation for typed expectation channels
Fixed up implementations, mostly works for now actually.
a good chunk of documentation progress