refactoring various data gathering controllers into one ytData factory