Introduced ACRs with required properties.

* Styles/classes/attrs starting with '!' are required. Element without
them won't be accepted by this rule.
* Required styles/classes/attrs may also be set by requiredStyles/requiredClasses/requiredAttributes (string/array).
* Name of rule.validate has been changed to rule.match which makes more sense. Now its meaning
is simpler - rule has to match to element to be applied to it.
Use ACRs with required properties.
Made all CKEDITOR.style's parts required.