Refactor in prep for a second source type