Ensure completion value is carried across a break and returned.
Force division back to long if double is not required to represent the result.
More coercion of doubles to longs where preceision isn't lost.
Better huersistics around regexps in the lexer.