Fix variance unit conversion.

This is also needed for browser-based benchmarks.

https://code.google.com/p/esprima/issues/detail?id=397
Catch clause should only accept an identifier.

https://code.google.com/p/esprima/issues/detail?id=423
Revamp the speed comparison test.

Focus on parsing with location tracking.
Use the upstream code for the parsers.

https://code.google.com/p/esprima/issues/detail?id=424
Always benchmark with location tracking parsing.

https://code.google.com/p/esprima/issues/detail?id=424
For the benchmark result, show relative mean error instead of variance.

https://code.google.com/p/esprima/issues/detail?id=424
Speed comparison: No need to display the source size.

We need the precious horizontal space.

https://code.google.com/p/esprima/issues/detail?id=424
Use rawgithub.com to load upstream external projects.

https://code.google.com/p/esprima/issues/detail?id=424
A new smoke test: parse all the code in the benchmark corpus.

https://code.google.com/p/esprima/issues/detail?id=425
Ensure the smoke-test library parsing work with the barebone V8 shell.

https://code.google.com/p/esprima/issues/detail?id=425
Simplify skipComment() function.

Just like in V8 and other JavaScript engine, handle single-line and multi-line
comment separately. This avoids building a "mini state-machine" inside
skipComment() function.

This reduces the cyclomatic complexity of skipComment() from 19 to 8.

http://code.google.com/p/esprima/issues/detail?id=396
Vary parsing options in the unit tests to increase code coverage.

http://code.google.com/p/esprima/issues/detail?id=388
Minimize object construction when tracking location.

As suggested by ZHANG Bei <ikarienator@gmail.com>, there is no need for
rich object when tracking the node location. Firefox 20 shows 6% speed-up on
the full benchmarks.

https://code.google.com/p/esprima/issues/detail?id=424
Tolerant mode must accept setters with no parameter

When parsing in tolerant mode, a setter with no parameters no longer
halts parsing but instead adds the 'Unexpected token )' error to the
error list.

https://code.google.com/p/esprima/issues/detail?id=426
Do not use createLocationMarker() unnecessarily.

V8 3.19 shows 11% speed improvement.

https://code.google.com/p/esprima/issues/detail?id=424