make Blade.build_rules_generator not member