Engineering a Multi-Agent Forecasting System