improved type safety and restoring state when exceptions are thrown
improved type safety and restoring state when exceptions are thrown

ContinuumIO/chaco,tommy-u/chaco,ContinuumIO/chaco,tommy-u/chaco,ContinuumIO/chaco,burnpanck/chaco,ContinuumIO/chaco,burnpanck/chaco,burnpanck/chaco,tommy-u/chaco