Improve ocaml-globe public API
Bug fix:
- Scene.zoom_to_satellite: fix dt=0 bug (was t.current_unix - t.current_unix)
API improvements:
- Make Color.t abstract: add r/g/b/to_tuple accessors
- Make Mat4.t abstract: add invert, of_float_array
- Make Camera.t abstract: hide drag state, add accessors
- Unify Color.t across Orbit, Coverage, Grid, Heatmap, Scene
- Add Gl_coord.of_kepler for direct Kepler.Vec3.t conversion
- Remove det3/invert_mat4 from Raycast, move invert to Mat4
- Label Camera.update ~dt
- Default segments in Geometry.circle_on_sphere (64)
- Add Satellite.eccentricity/inclination accessors
- Add Shader.shader_kind variant (Vertex | Fragment)
- Visibility.partition_by_lod returns record { full; dot_only; hidden }