Refactor: libpe_status: straighten out header dependencies
Previously, crm/pengine/status.h and crm/pengine/complex.h had
interdependencies such that status.h could be included alone or before
complex.h, but complex.h could only be included after status.h.
22d066c1 included complex.h alone from compatibility.h, which broke
compatibility.h (obviously, no one's using it, which is a good thing anyway).
Commit 85334374 tried to get around the dependency by including status.h in
complex.h, but that was a mistake. Thankfully it did not break any usage that
was not already broken.
This commit rectifies the situation by adding a new header, pe_types.h, with
the type definitions and enums from both complex.h and status.h, which are
reduced to including the new header and declaring various functions.
All of this should make the ABI compliance checker happier, as well as being
more correct.