Text this: Machine learning applications in flood forecasting and predictions, challenges, and way-out in the perspective of changing environment