(PUP-2898) Specify terminal semicolon for resource bodies

There was a regression in the future parser in d25e462 which caused
resources with multiple attributeless bodies constructed like this:

file {
  '/foo':;
  '/bar':;
}

to fail because the future parser grammar was not allowing the terminal
semicolon.  The acceptance suite picked this up running with parser
future.  It slipped past specs because, even though we have a spec
testing multiple attributeless resource bodies, it lacked a terminal
semicolon.

Henrik Lindberg figured out the minor egrammar fix here to correct the
expression, and a test case is added to catch it in specs.
Merge pull request #2937 from jpartlow/issue/master/pup-2898-resources-with-terminal-semicolons

(PUP-2898) Specify terminal semicolon for resource bodies