Beginning of a sync with net80211 from FreeBSD. Lots to do.

Sources taken from 2008-02-22.
Merge from FreeBSD.
Fix merge botch so that we use new world locking.
Another merge botch.