Add support for rule parameters

Refs #47

Rule parameters are settings that can be passed to rules in style files in
order to customize their behavior. The settings are provided in style files to
enforce a specific style.

This commit also changes how ruleset files are evaluated to be more sensible
(the block inside the rule is now instance_eval's as part of the Rule object
rather than as part of the ruleset object and building up parts of the rule as
needed).
Use parameters for existing rules

Refs #47

This removes duplicates rules (e.g. enforcing specific header styles which can
now be configurable), updates the rule documentation and tests appropriately.
Add tests to verify rule documentation

The tests check that docs for all rules exist, and that the descriptions, tags
and parameters match what the rules say they are.
Fix path to RULES.md so travis works
Update styles to match rule modifications

Notes on the cirosantilli style:

* Parameters have been added to relevant rules to match the style guide
* All remaining rules have been included in an attempt to simplify the style
  file. Previously excluded rules have either:
  * been removed in favor of parameters
  * don't matter (e.g. only fire on non-atx style headers)
  * probably shouldn't have been excluded (MD002 - first header should be a h1
    seem to be implied by "don't skip header levels")