//! This library provides methods which, given a tree and a set of node-to-node transformation rules,
//! Below is an example using a "calculator" language. The engine allows us to reduce the expression to a simplified form.
//! // Ordering is important here: we evaluate first (1), then reduce (2..6), then change form (7)