networkd: Fix issues with bonding and VLANs

These changes are needed to allow bonding and VLANs to work properly with networkd. Most of this will be removed as networkd fixes issues.
It probably doesn't hurt, but I'll return early.