Redesign of the MMIO access interface

See https://docs.google.com/document/d/11qcGCWLne1wYvmtFaSrOKZt_vHxXrcWcZsdWJ-MJnyo/edit for the high-level idea behind this change. None of the optimizations this document talks about have been implemented, but the new MMIO access interface should now allow it.

Overall -700 lines to the codebase (including the removal of WII_IOB which is not something real). Arguably more readable, objectively more usable for cool optimizations.