Boot an instance with multiple vnics on same network

If the same L2 network is requested multiple times for the same
instance then creating ports on same network and attaching them
to the same instance raises a DuplicateNetworks exception.
Similarly, attaching multiple existent ports on same L2 network
to the same instance raises a DuplicateNetworks exception. This
is the default behavior that is defaulted by a newly introduced
nova flag "allow_duplicate_networks" which is set to
False by default.

Not raising a DuplicateNetwork exception and allowing an instance
to have multiple vnics on same network is useful for NfV service
instances and in that case this newly introduced nova flag should
be set to True.

DocImpact: New neutron.allow_duplicate_networks configuration option
Implements blueprint multiple-if-1-net
Change-Id: Id4d633162c785c9b56b9c8426c0445770bc1352e
Closes-Bug: #1187244
Merge "Boot an instance with multiple vnics on same network"