REFACTOR: reverse conditional

negative conditions are slightly harder to comprehend
Make property/field access case-insenstive.
`-ne` comparison, for int only.
Stop making Irony's Unnamed terms transient.

Better if we can stay a little closer to the official Irony source.

Also, notice that this code was indented but did not have braces. Oops/uggh.
IRONY: Make Unnamed nodes more obvious.
REFACTOR: Introduce `argument_list_opt` to avoid an unnamed grammar term.
Remove 1/2 of a Shift/Reduce error

Grammar Explorer reported 2 different reduces this could be, and now I have eliminated one of them.
Eliminate a shift/reduce error around member access.

I admit I am at the edge of my understanding, so I am not certain this is
the right change. But I like seeing the count of errors drop.
Eliminate a shift/reduce error around `for` statements.

I admit I am at the edge of my understanding, so I am not certain this is
the right change.

One consenquence of this change is that the parser will allow:

    for (;;;) { }     # Should be illegal - 2 semicolons max

and of course, pipelines between those semicolons:

    for ( $x = 0 ; $x -lt 10 ; $x++ ; echo $x ) { }    # should be illegal

We'll check for that in post-processing, or fix the grammar.
REFACTOR: reverse conditional

negative conditions are slightly harder to comprehend
Make property/field access case-insenstive.
`-ne` comparison, for int only.
Stop making Irony's Unnamed terms transient.

Better if we can stay a little closer to the official Irony source.

Also, notice that this code was indented but did not have braces. Oops/uggh.
IRONY: Make Unnamed nodes more obvious.
REFACTOR: Introduce `argument_list_opt` to avoid an unnamed grammar term.
Remove 1/2 of a Shift/Reduce error

Grammar Explorer reported 2 different reduces this could be, and now I have eliminated one of them.
Eliminate a shift/reduce error around member access.

I admit I am at the edge of my understanding, so I am not certain this is
the right change. But I like seeing the count of errors drop.
Eliminate a shift/reduce error around `for` statements.

I admit I am at the edge of my understanding, so I am not certain this is
the right change.

One consenquence of this change is that the parser will allow:

    for (;;;) { }     # Should be illegal - 2 semicolons max

and of course, pipelines between those semicolons:

    for ( $x = 0 ; $x -lt 10 ; $x++ ; echo $x ) { }    # should be illegal

We'll check for that in post-processing, or fix the grammar.
Merge branch 'shift-reduce-errors' of https://github.com/JayBazuzi/Pash into shift-reduce-errors

* 'shift-reduce-errors' of https://github.com/JayBazuzi/Pash:
  Eliminate a shift/reduce error around `for` statements.
  Eliminate a shift/reduce error around member access.
  Remove 1/2 of a Shift/Reduce error
  REFACTOR: Introduce `argument_list_opt` to avoid an unnamed grammar term.
  IRONY: Make Unnamed nodes more obvious.
  Stop making Irony's Unnamed terms transient.
  `-ne` comparison, for int only.
  Make property/field access case-insenstive.
  REFACTOR: reverse conditional
Merge master -> shift-reduce-errors