A whole lotta long double loving

This will also fix a number of errors in the libcxx test suite.