When working with a contractor, how do you avoid change orders, additional costs, and delays? - Vancouver Architect

When working with a contractor, how do you avoid change orders, additional costs, and delays?