Corrected desugaring of `and` and `or`.

`and` and `or` don't imply constant `false` and `true` values.
Instead, the evaluate in one of their operands. `false` and `nil`
are the only values that are treated as falsehood, and other values
imply truth.

    print(0 or 1) -- prints 0
    print(nil or 1) -- prints 1
    print(nil and 1) -- prints nil
    print(false or nil) -- prints nil