tidy up requires
make class test more stringent and informative
replace duplication of hardcoded string with TYPE
rename Pacemaker::CIBObject::type to ::definition_type

Clarify that this class method is for extracting the type from a
definition string, not for obtaining the native type of the class.
refer to TYPE via self.class to allow inheritance

When referring to TYPE directly, the value is taken from the class in
which the method is defined, but we want it to be taken from the class
for the object being acted on, so we instead use self.class::TYPE to
ensure that methods still work in inherited subclasses.  For example
this means that Pacemaker::Resource::MasterSlave will be able to inherit
from Pacemaker::Resource::Clone.
implement Pacemaker::Resource::MasterSlave
implement ms LWRP using library code