Refactored to streaming interface with caching to LevelDB