Testing syntax and semantics. Restructuring. Engines and Interfaces.