Clean up the reader
Accumulative hash checks, and clean up reader a bit
Add heartbeat
Check the last sequence number and accumulated hash with the trusted location
Use listener to make reading more flexible