v0.2, cleaned up, implemented read abort