Teaching BIM as a Computational, Queryable, and Analyzable Model: A Project-Based Framework Integrating APIs, Programming, and Early Performance Reasoning