SWIGS (Shallow Water in Irregular Geometries Simulator): a software to simulate transient or steady flows with solute transport in channels, channel networks and rivers