Add bitwise ops and base conversion (DEC/OCT/HEX)

These operations implicitly truncate their parameters, and result to
integers:

* not
* and
* or
* xor
* shl
* shr
* mod
* trunc

Binary (base 2) was left out of the base conversion code intentionally
as it would require making the UI at least one third wider and the
benefits would be negligable.