Add floating point parsing.

Floating point parses for doubles correctly and can be easily
implemented for the other types of floats (algorithm is general with
respect to the precision of the significand).

Some half-baked gates are included, like bey, which is unfortunate. I'm
not sure if an equivalent to bey exists somewhere. These won't be used
anywhere with actual math, though.

Warning: Don't try to print floats. It doesn't work and will crash or
something. Its not really implemented, because parsing is actually
fairly nontrivial mathwise. Parsing represents the problem

x.y -> r2^e, find (r, e) given (x, y)

whereas printing is the problem

r2^e -> x.y,  find (x, y) given (r, e)

both of which are annoying to solve.
Fix rounding.

Use "round to closest" mode, w/ rounding to even when same distance
(which is a rare case anyway)
Fix multiply. Seems to work.

Probably won't test too much more. It will be easier to test once there
is a jet.
Jet mul:rd.

Running in test mode for now.
Merge branch 'newbreach' into ieee

Conflicts:
	urb/urbit.pill
Implement add:fl and add:rd.
Jet add:rd.

Also fix some rounding in add:fl that was found through jet test mode.
Add sub:rd and sub:fl.

Also a fix in exp:rd.
Kill stray newline.
Jet sub:rd.
Signed exponent for floating points.

Yay, now parsing something like 0.x is possible in the parser.
(Previously fails due to underflow). 0.0x is still impossible due to
parser limitations, so use (div:rd .~0.x .~10) when div is actually
implemented).
Give atoms more specific odors.
Add div:rd, div:fl, and jet.

Also fix rnd:fl (by fixing rne:fl).