Upgrade to pegJS 0.8

Upstream changes that affect us:
 - line and column variables are now functions
 - parser.toSource() removed in favor of a generator option that switches between an object and string versions
Grammar cleanup. Use new |error| grammar.
Upgrade pegJS to 0.8
Grammar cleanup. Use new |error| grammar.
Release v2.3.6
Merge 2.3 changes
Merge pull request #497 from sethkinast/pegjs-0.8

Upgrade to pegJS 0.8
- This change corresponds to a 90% reduction in template compile time.