Do not panic when a value < 0 is passed to Sqrt().
Fixes bug where a + or - sign would sometimes be parsed
as the sign for a numeric literal, instead of an operator.
The evaluator now detects these instances and turns the
sign back into an operator. This is a pretty messy patch,
but it works.