Added a discussion of variable substitutions, and some evaluation sections.
Only bindings which share a variable are considered transitive. The Unification algorithm no longer returns term-to-term bindings. A V-T binding is only added to the Unifier if the variable was previously unbound.
Added extra comments. Added an extra check when verifying variable-variable bindings to avoid returning term-term bindings from unification.
Added functions for eliminating bound local variables by substitution.
The interpreter now eliminates bound local variables when they go out of scope. Also added code for printing the time taken for a query to execute.
Compiled output now eliminates local variables during execution.