Make addressing optional for vlan(4) interfaces

Before this, to create a vlan interface, the user had to specify at
least one IP address.  This is not actually a hard requirement.  This
code updates the code to reflect the fact that addresses on vlan(4)
interfaces are optional.

Here also adds support for FreeBSD vlan(4) interfaces, which has lagged
behind the OpenBSD support.

In here are also some improvements on the tests.