EG: reduced add/removeWriter calls
EG: added test for EOF; handle->step
EG: made use of closable possible