Add global attributes 'if' and 'unless'

'if' is an alias for 'ifvarclass'. 'unless' is negated 'if'.

Example, suppose we are on Ubuntu,

bundle agent main {
 reports:
  "should not print" if => "!ubuntu";
  "should print" if => "ubuntu";

  "should not print" unless => "ubuntu";
  "should print" unless => "!ubuntu";
}

Redmine #6179

These attributes work like 'ifvarclass' and 'depends_on' in the sense
that they are evaluated before other attributes of a promise. Evaluation
of the rest of the attributes is omitted if the promise is excluded.