(#21874) Apply making name[x] and name [x] different.

This also includes a cleanup of LAMBDA (unused/dead logic in grammar)
(#22363) Add Puppet 4x validator & tests

Adds a puppet 4x validator (not derived from the 3x validator due
to performance concerns).

The 4x validator relaxes rules for operator [] to support ranges and
hash multi lookup.

Tests added for these cases.