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)
json.== handles nil now
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
Fixed `==` for PTables, added test.
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
Add reversed proc
Fix to included last element in reversed
Change wordwrap to remove separators at newlines
Update news.txt
Add random() for openarrays
Improves docstring contents and visibility of paramStr and friends.