kernel - reformulate some of the pmap code to adhere to the new rules
* hold_count can now be adjusted asynchronously so it cannot be used to
count the number of pte's in a page table page. Use wire_count instead.
* On i386 there is no extra wire_count for the page table page mapping itself
so the pmap_release code should never find a page table page other than the
page directory page itself.
* Reformulate the *ptep checks in x86-64's pmap_scan() code to avoid races.
* Document why busy pages can sometimes be found in the PQ_FREE queues.
* Document that other than finding a busy page, pages in PQ_FREE should be
ready to go.
* It is possible for a wired page to wind up on the inactive queue, the
pageout daemon has to deal with the case by dequeueing it.