Implements part of P0898R3 Standard Library Concepts
Reworks D74351 to use requires-clauses over SFINAE and so that it more
closely follows the wording.
Co-authored by: Michael Schellenberger Costa <email@example.com>
(Michael did all the heavy lifting and I came in to polish it for
submission, since Michael is focussing on std::format now.)