Fix parsing of logical expressions

Currently `parse_logical` does not pass `max_precedence` to `parse_logical_or_arithmetic`, and, as default `max_precedence` is `math.huge`, effectively all logical operators have same precedence and are right associative.

Testcase:

```bash
$ cd tools
$ ../deps/luajit/usr/local/bin/luajit pflang-compile '0=1 and 0=0 or 0=0'
```

Result before fix:

```
return function(P,length)
   do return false end
end
```

Result after fix:

```
return function(P,length)
   do return true end
end
```

Also added a test for this.