gmp: add new bottles without assembly.

Closes #23114.
Boost: simplify universal handling and other improvements.

* Use Homebrew standard universal handling.
* Handle whether to build MPI at bootstrap.
  - Also improve parameter construction.
  - Use CPU.is_32_bit? instead of accessing CPU.bits directly.
* Add more caveats:
  - Boost.Log is disabled when building using apple-gcc42 or llvm-gcc.
  - Boost.Context and Boost.Coroutine are only supported on x86_64.
brew-test-bot: cleanup junit file with iconv.
InstallRenamed: don't overwrite etc files; rename.

If an etc file exists on installation instead of overwriting it (or
requiring all the manual checks in formula) simply copy it with the
extension `.default` appended.
Pathname: add cp_path_sub method.

This method allows copying a file to a new location by performing a
substitution on the pathname.
formula: add bottle_prefix method.
formula_installer: handle etc/var in bottles.

Copy these files/folders to a .bottle directory under the Cellar for installation
elsewhere at pouring time.

Temporarily disable HOMEBREW_GIT_ETC methods until fixed.
git_etc: update based on bottle etc/var changes.
abcde: use new etc.install overwrite handling.
aiccu: use new etc.install overwrite handling.
denyhosts: use new etc.install overwrite handling.
foremost: match new etc.install default naming.
logrotate: use new etc.install overwrite handling.
peervpn: use new etc.install overwrite handling.
redis: use new etc.install overwrite handling.
redis: remove 2.4 upgrade path, no longer needed.
lighttpd: remove unneeded post_install.
mariadb: move var mkpath to install.
mongodb: move some post_install back to install.
mysql: move some post_install back to install.