[libc++] Refactor the mandatory header inclusion tests to .gen.py

This allows removing a bunch of boilerplate from the test suite and
reducing the amount of manual stuff contributors have to do when they
add a new public header.

Differential Revision: https://reviews.llvm.org/D151830

GitOrigin-RevId: 45307f1b0d27831206b2e8d9bb95d0cd64f3a922
41 files changed