Really big changes, near totally rewritten expression parser and operators