opt-in canvas staging, tool gating, route normalization
- eia_query_route stages a canvas table only when called with stage: true, not automatically whenever a canvas is configured (#50)
- eia_dataframe_describe/eia_dataframe_query/eia_dataframe_drop gate at registration when no canvas is configured, instead of registering and failing per call (#52)
- eia_browse_routes now accepts the same leading/trailing/doubled-slash route spellings eia_describe_route and eia_query_route already tolerated (#53)