[libc++] Make all of <random> depend on <__math/FOO.h> instead of <cmath> (#213084)

Some of `<random>` functionality depends on the system's `math.h` header
instead of `__math/FOO.h`. System's are just undefined symbol to be
linked, but the `__math/FOO.h` are implemented with potentially
constexpr-friendly builtins. Also, some of the functionality seems to be
using `__math::` namespace and some doesn't, seemingly randomly.

This PR fixes such inconsistency, avoids using non-constexpr functions
from the system's `math.h`, and in turn removes obstacles for P3791
`constexpr <random>`.

Co-authored-by: Louis Dionne <ldionne.2@gmail.com>
GitOrigin-RevId: ada3786e91ca2058f3ac8255a024c12ae7d263ee
14 files changed