vfs: refactor kern_unmount
Split unmounting by path and id in preparation for other changes.
Sponsored by: Rubicon Communications, LLC ("Netgate")