added `--define` #100
changed define option to be more C-like #99

values are code fragments now.
allow objects in `define` option #100
better typeof support
support a bit of math: +, -, *, /
tests for define
beta19