A logging category descriptor hierachy. The descriptor contains a category name, a
/// optional priority value, and an optional target. If the priority or target values
/// null, the resulting value will be derived from the parent category desciptor. A
/// category descriptor may 0-n subsidiary categories. CategoryDirective names are relative.
/// For example, the category "orb" will appear as "my-app.orb" if the parent category
/// name is "my-app".
///
/// XML
///
/// <categories priority="INFO">
/// <category priority="DEBUG" name="loader" />
/// <category priority="WARN" name="types" />
/// <category priority="ERROR" name="types.builder" target="default"/>
/// <category name="profiles" />
/// <category name="lifecycle" />
/// <category name="verifier" />
/// </categories>
///
///
///