removed IO ducktyping ( nice idea, but makes _all_ objects inherently stateful )