Add better documentation, and fix some floating point flag stuff