Merge branch 'release-0.3.0' into develop

* release-0.3.0:
  Bump version number to 0.3.0
Add a compliance test runner

This makes it possible for other implementations to run tests
against the compliance tests in this repo.  All you need is
an executable that takes the expression as a command line argument
and the data on stdin.
Update jp so we can actually pass the compliance tests

Mostly related to OrderedDict changes and printing
the proper error messages.
Update perftest to run single files
Add scripts to generate the lr tables

This allows the parser to used the cached lr table for a significant
performance boost.

Due to the way that ply caches/verifies the generated lr table, we
need different versions for both py3 and py2.

What this means in practice is that you'll have to run
bin/gen-tables on both python2 and python3 when changing the grammar.
Initial commit of jep-8
Incorporate review feedback

Also added a rationale section that covers the alternatives
considered and why they were not chosen.
Add exptype to the proposals index
Marking JEP-8 as accepted
Merge branch 'spec-jep-8' into develop

* spec-jep-8:
  Marking JEP-8 as accepted
  Add exptype to the proposals index
  Incorporate review feedback
  Initial commit of jep-8
Add note in README about how to regen the lrtables
Merge branch 'compliance-tester' into develop

* compliance-tester:
  Update jp so we can actually pass the compliance tests
  Add a compliance test runner
Merge branch 'gen-lr-tables' into develop

* gen-lr-tables:
  Add note in README about how to regen the lrtables
  Add scripts to generate the lr tables
  Update perftest to run single files
Regen lrtables
Initial commit of expression references

Adds support for:

* max_by
* min_by
* sort_by
Regen lrtables
Add docs for exptype (jep-8)
Merge branch 'func-by' into develop

* func-by:
  Add docs for exptype (jep-8)
  Regen lrtables
  Initial commit of expression references
Bump version to 0.3.1
Merge branch 'release-0.3.1'

* release-0.3.1:
  Bump version to 0.3.1
  Add docs for exptype (jep-8)
  Regen lrtables
  Initial commit of expression references
  Regen lrtables
  Add note in README about how to regen the lrtables
  Marking JEP-8 as accepted
  Add exptype to the proposals index
  Incorporate review feedback
  Initial commit of jep-8
  Add scripts to generate the lr tables
  Update perftest to run single files
  Update jp so we can actually pass the compliance tests
  Add a compliance test runner