Enable mmu_map managed amd64 maps to be destroyed after use.
This involves testing that the backing pages are no longer in
use, and delinking them in the page hierarchy, before they are
freed back to the kernel.

This is the last supporting patch for what would have been the
mmu_map(9) MI api, which I have now abandoned in favour of the
DMAP based native approach to page table management. This will
make the amd64/xen/pmap.c code much easier to maintain.

WARNING: This KPI will be deprecated!

Approved by:	gibbs (implicit)
Implement pmap_extract() for userland.
Single user boot should now happen for 64M ram.

Approved by:	gibbs (implicit)
This commit brings us closer to native.

Desegregate pmap_pv.c and pmap.c
Bring in backing table functions from native and reduce dependency
on mmu_map.[ch]

Boot to single usermode breaks with this commit, however, this is
a good checkpoint to commit.

Next stop - direct map using 4K pages.

Approved by:	gibbs (implicit)