Ring waves on the surface of shear flows: a linear and nonlinear theory