Flesh out {do, has}{Read, Write} functions for individual endpoints.
Flesh out {do, has}{Read, Write} functions for individual endpoints.

These functions mirror the functionality of the generic* functions in the
haskell engine, serving to manage the interaction between handle, buffer and
subscribers.

yliu120/K3,DaMSL/K3,DaMSL/K3