First pass

Needs tests to confirm that it is actually working.

Seems nice and fast though.

Better way to convert string->float? (Slow at moment)