Methods
(async) fetchAllData()
Fetch all CSV data with caching
(async) fetchData()
Fetch individual CSV file with 24h caching Tries local file first, then falls back to remote URL
getCache()
Get cached data if not expired
getElectionCycles()
Get unique election cycles from comparative data
getParties()
Get unique parties from comparative data
setCache()
Store data in cache with timestamp