Refactor: libpe_rules,libcrmcommon: parse comparison type into enum
This will make planned changes easier, allows for unit testing, and is more
efficient.
Also, log invalid comparison types. Previously, accept_attr_expr() would return
false in this case, either because one of the values was NULL, or because it
fell through to the final return. Now, we return FALSE sooner, in
pe__eval_attr_expr().