Revert the previous change, because it broke the regression test.
This means that terms like "3d" will, as before, be incorrectly lexed
as the number "3" followed by the word "d", but that's how every
release until now has been, so we can obviously live with that.
The regression test was also broken by the previous change supporting
floating-point numbers, but I fixed that by having render() return
only the integer part when that's numerically equal to the full
banana. A similar lexical hack might be the way forward with the
other reverted change, but right now just making everything work the
way it ought to top priority.