feat: Unified PushdownPlan architecture (Phases 1-4)

- PushdownPlan dataclasses for query representation
- Unified plan builder in PlanExecutor
- execute_pushdown() in SparkGraph
- Wired up with fallback to legacy methods

Ready for Databricks validation before Phase 5 cleanup.