Encode floats correctly

Fixed how floats are encoded and decoded, they were being encoded into 26 bit sequences instead of 31 bits as is defined in the External Term Format.

http://erlang.org/doc/apps/erts/erl_ext_dist.html#id86527