Raise specific error of network IP allocation

Currently Nova raise "Neutron error: quota exceeded" when
neutron client state code is 409 in IP allocation without
caring about if the real error is over quota.

This fixes raises PortLimitExceeded if error from neutron
client is OverQuota and raises NoMoreFixedIps if error from
neutron client is IpAddressGenerationFailure. If the error
is neither of these two errors above, it reraises the original
exception from neutron client.

Change-Id: I0d1942587a359acccfca5298c2dcb4b21d971a42
Closes-Bug: 1331353
Merge "Raise specific error of network IP allocation"