TODO (in no particular order)
===
-- Finer grain hooks (state changes)
   - Eye towards integration w/ other readers
