Migrate candle storage to a single combined SQLite database and refactor backtesting
Replace per-symbol SQLite databases with a unified `candles.db` containing a `symbol` column. This change updates the backtesting engine, technicals loader, and data fetching scripts to read from the combined store.
Introduce a new `migrate_candles.py` script to move existing per-symbol databases into the new format. Also add `fix_historical_splits.py` to handle TQQQ stock splits with idempotent logic that verifies boundary ratios before applying adjustments.
Update `CandleStore` to use Write-Ahead Logging (WAL) for better concurrency and performance. Remove legacy backtest code and the old TQQQ-specific split fixer script.