Added template "data" type

So that the data can be stored as pre-parsed data, instead of
as strings parsed at run-time
Print names for enumerated types
Parse literals into VALUE_PAIR_DATA at compile time.

So that we have better errors.

However... we don't have type-specific parse errors, as
the current error API in conditions doesn't allow for that.
Added 'true' and 'false' as top-level concepts.

So that "false && FOO" gets mapped to "false"

Nice little optimizations...
Evaluate some conditions at parse time.

If the LHS and RHS are both DATA, then evaluate them statically,
and turn them into true / false conditions