v0.2.18 - SQL generation for multi-hop queries

Features:
- Multi-hop (a)-[]->(b)-[]->(c) generates single SQL query
- Fix embedded FK detection (eliminates self-join bug)
- All query types now faster than raw Spark SQL

Performance (SF100, auto mode):
- Simple Node: -32% (32% faster than raw SQL)
- Filtered Node: -17% (17% faster)
- Aggregation: -16% (16% faster)
- Single-hop: -22% (22% faster)
- Multi-hop: 40-50% improvement vs DataFrame API