Added macro expansion to business rules.

To support macro modulation, business rules are re-evaluated on each
service scheduling loop, and checked for error to detect erroneous macro
substitution.

Also added the ability to force a service scheduling without setting its
status or return value in ShinkenTest class. Used to force business rules
processing in tests.
Fixed business rules re-processing.

Hosts and services should directly come from and upper level (scheduler)
rather being stored in the Host or Service class.
Only re-evaluate business rules having macros.

Filters business rules to only re-evaluate those having macros on
manage_internal_checks step..
Forgot `ShinkenTest` silent mode feature.
Merge pull request #972 from geektophe/bp_rule_macro_expand

Added macro expansion to business rules.