Fix parse, Number, and Map

All `parse` methods were taking `self` as the first paramter, which is incorrect
for static methods.

`Number` has the `//` and `/` operations swapped.

`Map` was causing infinite `__init__` loops, and was refactored to be simpler.