Surface functional groups and defects on carbon nanotubes affect adsorption–desorption hysteresis of metal cations and oxoanions in water