(PUP-3274)(PUP-3638) Make future parser standard and remove 3x parser/lexer/ast

This is a mega removal and cleanup of old 3x code.

* Removal of lexer, parser, and the majority of the AST classes (except those still used by the compiler
* Removal of related tests; merging future and old tests that should remain
* Removal of parser setting
* Removal of binder setting
* Cleanup of remaining AST classes
* Adjusting documentation since "future" is now here
* Fixing benchmarks that were specific for future parser
* (PUP-3638) Removal of RDoc1
* (PUP-3638) Removal of RDoc2 generation of documentation for all .pp
* Removal of doc support in the remaining AST classes
Okay, the issue is more the documentation of the feature remaining in application/doc.  There is an example that implies you can point the doc tool at a directory and it will do it's thing.  This feature was actually for pointing at specific manifest files and would call manifestdoc() which now raises the above error.  Everything works fine (for the level of fine currently associated with the rdoc tool :) if you instead set modulepath.  So I think that the example here:

https://github.com/puppetlabs/puppet/blob/master/lib/puppet/application/doc.rb#L131

needs to be changed to replace the '/path/to/manifests' with something like '--modulepath /path/to/modules'

And that:

https://github.com/puppetlabs/puppet/blob/master/lib/puppet/application/doc.rb#L82-L83

should be deleted.