Tokens like 4830N00210E (DM, 11ch) and 483012N0021034E (DMS, 15ch)
now classify as a new TokenKind.COORDINATE and resolve geometrically
to a RoutePoint(point_type="coordinate") via parse_icao_coordinate —
no DB lookup. Previously they fell through to UNKNOWN and were
silently dropped from the resolved route.
waypoints_of and annotations_of now treat WAYPOINT and COORDINATE
together as "route points," so coords flow through the same path as
named fixes. The detour gate still applies, so a misplaced coord
gets rejected like any other off-route candidate.
Bumps version to 0.9.0.
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>