Refactored dependencynode.py file.

Splitted long methods into smaller ones with smaller context to enhance
readability, maintenance, and to ease futur features integration.
Implemented complex business rules expansion

Business rules can now accept expansion expression on both host and service
items parts, allowing to write complex expnasion expression.

Expansion is now implemented using a filter based search allowing to
easily extend expansion criteria types.
Fixed a bug in business rule output processing.
Added tags expansion to hosts and fixed some typos
Renamed business_rule_tags to business_rule_labels
Merge pull request #996 from geektophe/bp_rule_service_tag

Added complex business rules expansion
Partial commit
Merge branch 'master' of https://github.com/naparuba/shinken
Gives precedence to CRITICAL state in bp_rules.
Optimized macro based business rules expansion

If a business rule has macros, only re-evaluate it if the macro was
modulated (the business rule expresson really changed).
Merge pull request #1013 from geektophe/bp_rule_macro_expand_optimization

Optimized macro based business rules expansion
Add support about service dependency in external mapping script
Merge branch 'master' of https://github.com/naparuba/shinken
Merge pull request #1012 from geektophe/bp_rule_worst_state_fix

Give precedence to CRITICAL state in business rules state processing
Renamed attribute business_rule_labels to labels.

This allows a more generalized usage of label grouping in the future.
Merge pull request #1014 from geektophe/attr_rename_label

Renamed attribute business_rule_labels to labels.
Fix: graphite install on debian
Merge pull request #1015 from lermit/install_graphite

Fix: graphite install on debian
Fix: graphite install on debian need pycairo
Merge pull request #1016 from lermit/install_graphite

Fix: graphite install on debian need pycairo