Text this: Predicting Water Quality with Artificial Intelligence: A Review of Methods and Applications