Fix: libcrmcommon: compare empty strings correctly in attribute expressions
Previously, value_from_source() returned NULL when the reference value in the
attribute expression was the empty string, meaning the attribute expression
would be treated as not passing.
However using the empty string as the reference value should be allowed. Since
we now require a reference value to be specified, it can't be NULL if we get to
value_from_source().
This breaks behavioral backward compatibility.