Port to argparse based cfg

Implements blueprint argparse-based-cfg

Sync the following changes from oslo-incubator:

479f19c Add deprecated --logdir common opt
27b2ff4 Add deprecated --logfile common opt.
9b81289 Allow nova and others to override some logging defaults
3557d84 Fix ListOpt to trim whitespace
01ab910 Fix set_default() with boolean CLI options
af18eaa Improve cfg's argparse sub-parsers support
f21e1d9 Fix regression with cfg CLI arguments
ceb4aa7 Fix broken --help with CommonConfigOpts
5e9503b Hide the GroupAttr conf and group attributes
b6d24bb updating sphinx documentation
403509e Don't reference argparse._StoreAction
e17deb8 Fix minor coding style issue
0c29e1d Remove ConfigCliParser class
5b9cb41 Add support for positional arguments
dbc72a6 Use stock argparse behaviour for optional args
768a147 Use stock argparse --usage behaviour
ac180b9 Use stock argparse --version behaviour
0787e38 Remove add_option() method
5afead0 Completely remove cfg's disable_interspersed_args()
5f564b2 argparse support for cfg
d7b6397 Add a missing comma in a docstring.
aca1805 cfg: fix required if option has a dash

Note: various utilities/services with command line parameters needed to be
updated due to the changes mentioned above. The downside is that these are
not backward compatible. Unknown arguments are no ignored. Only bound
arguments will be treated.

Thanks to Mark McLoughlin for migration cli code changes.

Change-Id: Ia776e78cc55f4ed33ace5efa8d726b70e3fa4131
Fixes quantum.api.v2.base._filters to be more intuitive

Converts values in one place and sets dictonary according to the return value

Fixes bug #1092977

Change-Id: I05dd9b24a8ab20f8c302c22f5bdda2a80ec90e19
NvpPluginException mixes err_msg and err_desc

In a few places err_msg was passed to NvpPluginException though that
expected err_desc. This patch makes NvpPluginException take err_msg
instead and updates err_desc to err_msg when calling NvpPluginException

Fixes bug 1098351
Change-Id: I10eca5f2b98ce8faa81ad7c7687902b6f08752c1
Merge "Port to argparse based cfg"
Latest OSLO updates

Change-Id: Ibf223203c8b34f614357fa4539d0dfa953765d6b
Use default_notification_level when notification

Fix bug 1089773

Notifications in quantum api do not honor default_notification_level
in quantum.conf and always use INFO level. On the other hand
dhcp-agent refers to default_notification_level.
If default_notification_level is set to a value other than INFO,
dhcp-agent cannot receive notification from quantum server.

Change-Id: Ie3ae576d62e91651aa59b2324ec114716181107f
Remove unused imports in unit tests

Change-Id: I10401bc240b2a7aebe6317067dafe8bfe35264f8
Merge "Use default_notification_level when notification"
DHCP agent unable to access port when restarting

Fixes bug 1099072

The security groups would return an exception for invalid port ownership.

Change-Id: I8c48adce30b160bd776b5e68bc321e3a2e8cbce2
Merge "Fixes quantum.api.v2.base._filters to be more intuitive"
Merge "Remove unused imports in unit tests"
Remove unsused imports in the plugins package

Config imports are needed for correct init
quota_db is required to make sure quota database model at the proper timing

Change-Id: I885ed1f673cfc4c6331818ad68e2a505f7d69188
Merge "DHCP agent unable to access port when restarting"
Inform a client if Quantum provides port filtering feature

Part of blueprint vif-plugging-improvements

Quantum and Nova have duplicated functionality of packet filtering
such as security groups and anti spoofing filters.
By passing information whether Quantum supports the port filtering feature,
Nova VIF driver can skip its own packet filtering setup.

It is based on Daniel's advise in https://review.openstack.org/#/c/19436/

Change-Id: Ifd260cb61aa3990251510a4a3fe15454d8d584df
Merge "Remove unsused imports in the plugins package"