modularization of “default” attributes on Rule elements

The schema converted from XSD has a “default value” annotation inserted by the convertor.
This has not real purpose in our Relax NG framework. Instead we have a pattern for
managing attributes with “default values”.

This commit demonstrates how that is implemented on the new Rule element, which includes a
new attribute @style with default value “reasoning”.

Note that 6 different modules interact to create the necessary behavior.
Three of them are specific to the @style attribute, and three may be shared
by all default attributes introduced in Reaction RuleML.
Note that these default values are a major headache from many angles, not just Relax NG, and I hope we can redesign
all of them soon.

Signed-off-by: greenTara <taraathan@gmail.com>