Make mount_smbfs(8) preserve the "automounted" mount flag.

The issue here is that we have to pass this flag as a string,
in iov, because it doesn't fit in mntflags, which is an int.

MFC after:	2 weeks
Sponsored by:	The FreeBSD Foundation
Make it possible to use empty user name ("-U ''") for mount_smbfs(8).
It's just like "-U guest", except that it actually works, at least
with Samba 4, which seems to return authentication failure for "-U guest".

MFC after:	1 month
Sponsored by:	The FreeBSD Foundation
Bunch of microoptimizations to reduce dereferences and cache collisions.
Revert r271257 after several issues were pointed out.  An updated patch
will be committed at a later date.
Merge remote-tracking branch 'freebsd/master' into hardened/current/hardening