Fix a couple of assert failures.
Be stricter about negating booleans.

    We used to allow non-booleans. This was bad.
The lhs of += should be an lval.
Avoid division by zero deaths in the compiler.

    Print an error instead of dying.
Fix a few type errors.

    Indexing should require the lhs to be indexable.
Don't try calling non-function types.
Don't allow attempts to get members in types that don't support them.
Merge branch 'master' of git://git.eigenstate.org/git/ori/mc