[WIP] - Fetch Refactoring

Submitting this to get feedback on approach. Still needs more test coverage.