Split out review request and draft payload building into new tested functions.

Review Request #12250 — Created April 21, 2022 and submitted — Latest diff uploaded




In preparation for upcoming changes for posting review requests, this
change splits out the very-complex field-building from post_request()
into __build_new_review_request_data() (for building field data for
new review requests) and _build_review_request_draft_data() (for
setting draft state).

These are now fully tested, thanks to the new command and API testing
infrastructure. This has unveiled a few tiny slaws, such as
bugs_closed being built in random sort order (now fixed) and
text_type being used instead of field-specific *_text_type fields
for draft fields (not fixed, but may be the cause of some obscure bugs
we've seen in the past).

All unit tests pass.

Manually posted several changes for review (including this one).