Rework the lexer to first remove all whitespace

We want to allow equations like '2 + 2' and '1 000 000 + 1', so the
lexer now removes all whitespace before lexing the string. Since
this requires us to make a new String to hold the trimmed equation
we just slice from that, since having a permanent 'self.rest' slice
causes a lot of ownership problems.
Rework lexer to not care about case

When removing whitespace from the equation string, we also convert
every character to lowercase. This way we will not get an error
when lexing equations such as 'Sin(2)'.
Update README and bump version number

Make sure that the README matches the functionality of the program
and update the version number, since this a "major" update to the
program.