Make Reader persist across process session. Refactor its API for better use of deferred objects