make this return the *signed* distance!
check again since move to half_angle
Should name be cluSphereAdd()