libpromises: propagate "future" elements to validation vs. classes

"future" elements are declared early in control promises and will pass
the parser check.
But then, we want to verify that they are class-limited NOT to run in
our version.
That is, a future element mentioned in our promise files is OK,
but a future element used in promises we run is an error.

Example:
body common control {
    future_syntax => { "body.agent.control.foo_1",
                       "body.agent.control.foo_2"};
}

body agent control {
 cfengine_4_0::
   foo_1 => {}; # OK, we are not 4.0 yet

 cfengine_3_6::
   foo_2 => "";  # error, this class is active and "touches" this elem.
}