Fixed parsing of float literals.

Float literals were not parsed properly when their fractional part
exceeded 53 significant bits. This affected in particular math.PI
and math.E. Rather than reinventing the wheel, this patch reuses
C's strtod() implementation, which already does the heavy lifting
with respect to correctness, though some caution is necessary to
keep float parsing locale-independent.
More human readable `$`(float)

The output matches that of Python (eg 1e100, not 1.0e100), but also
reflects locale (assuming it was set using setlocale() before).
Tests for `$`(float)
added OEMCP for the default OEM codepage
rewrote lambdalifting; fixes deeply nested closures
Merge branch 'devel' of https://github.com/Araq/Nimrod into new_spawn

Conflicts:
	lib/system.nim
some progress for jester+async
compiles again
new jester compiles
minor changes to todo.txt
Merge branch 'devel' of https://github.com/Araq/Nimrod into new_spawn
c2nim is not part of the compiler anymore
fixes #933
fixes #1323
Fixes #542
Merge pull request #1336 from Varriount/fix-542

Fixes #542
Add reversed proc
Fix to included last element in reversed
Change wordwrap to remove separators at newlines
fixes #1011