Artificial Intelligence and Statistical Techniques in Short-Term Load Forecasting: A Review