Add new stack phase: post-extra

The current existing phases "post-config" and "extra" are not
sufficient to allow local.conf overrides to extra type services
because they run after the services are installed and configured.
This commit introduces a new phase called "post-extra" that runs
after these existing phases. With this change, users are able to
leverage local.conf to provide overridden options to services
like Tempest.

Change-Id: I5d758eebfda804dd1d8cbc3d5cc35ef4dcc8c96f
Closes-Bug: #1249085
Do not create an unnecessary file "ml2"

Previously when running devstack with Neutron ML2 plugin,
an unnecessary file "ml2" is created in devstack directory.
It is because when the first argument is not defined the second
argument becomes the first one.

This change moves the first "options" argument of populate_ml2_config
to the last and checks the given options has a value before adding
them to a file.

Change-Id: I9ff40456798c42216d414d5f8d443e671ab7d497
Close-Bug: #1255853
Adds entries for missing parameters in PLUMgrid plugin

Three configuration parameters were missing for the PLUMgrid plugin.
In this patch all those three have been properly added.

Change-Id: If070aa5eb35678d0984470ebcd43fd99e08bcc8a
Closes-Bug: #1255808
Merge "Add new stack phase: post-extra"
Merge "Do not create an unnecessary file "ml2""
Merge "Adds entries for missing parameters in PLUMgrid plugin"