tidy up geodesic stuff, fix geometry constructor