Adapter for RKelly AST.

In an attempt to replace Esprima with RKelly, I created an adapter
to convert the RKelly AST into Esprima AST.
Create Js::RKellyParser to mimic Js::Parser.
Throw away the comment delimiters.
Add range fields to adapted RKelly nodes.
Extract Js::Associator class from Js::Parser.

Intending to use the same logic in RKellyParser.
Make RKellyParser use the Associator.

Inside RKellyParser:

- Invoke RKelly.
- Adapt its output with RKellyAdapter
- Set the correct range for root node.
- Pass the adapated AST to Associator.

Change RKellyAdapter to:

- Create root "Program" node.
- Adapt the comment nodes inside this root node.
- Adjust the range end by one - so it matches the esprima way.
- Include line number to the adapter range.
Switch over to RKelly as the JS parser.
Some helper scripts to test RKelly performance.
Add "range" field to all adapted nodes.

The Js::Associator expects all nodes to have "range".
Testing another source snippet with compare.rb
RKelly copy of js_parser_spec.
Avoid reserved word "long" in test code snippet.

Causes problems with RKelly which chokes when it sees a reserved
word like that inside a property chain.
Avoid reserved word "enum" in @enum specs.

RKelly chokes when it sees that.
Make RKellyAdapter work with non-ident-properties.

Previously all property keys were treated as being
identifiers - now we correctly detect if they're
strings or numbers.
Adapt ranges for Catch clause.
Remove temporary RKelly test scripts.
Replace Esprima+V8 with RKelly.

But instead of standard RKelly gem, use our own rkelly-remix fork.
Merge branch 'rkelly' into doc-tags
Skip auto-detecting config file when --config used.

Also print out message in verbose mode about the auto-detected
config file, so reading it happens with less magic.

Fixes #402
Style H4,H5,H5 headings all as simply bold.

Previously H5 and H6 weren't styled at all, resulting them looking
like plain text.