apache: replace apache::mod::* hierarchy with simpler equivalent from MWV

This patch imports apache::mod::* from MediaWiki-Vagrant. Bryan can vouch
that I was initially not very thrilled about the pattern of using many
small stub classes to manage Apache modules, but we tried different
approaches and found this one to work best. It's especially handy for
cases like zirconium, where several small Apache vhosts share the same
underlying installation without being otherwise related. This is so
because the use of unparametrized classes means you can include or require
the relevant modules without worrying about duplicate definitions and
without reaching beyond what is appropriate to the vhost and relying on
bits of configurations that aren't expressed in the role class itself.

Change-Id: Iecfa44c925b533dbdc8724a6aa83f924844bfbdd
Merge "apache: replace apache::mod::* hierarchy with simpler equivalent from MWV" into production