QUAL2KW - A modeling framework for simulating river and stream water quality