src: use static_cast where appropriate

Use static_cast instead of reinterpret_cast when casting from void*
to another type.

This is mostly an aesthetic change but may help catch bugs when the
affected code is modified.
buffer: floating point improvements

Improvements:
* floating point operations are approx 3x's faster
* NaN/Infinity assignation more closely follows d8's implementation
* all read/write on floating point now done in C, so no more need for
  lib/buffer_ieee754.js