Refactored DataSources some. No functional changes.