Add support for creating provider networks

Implements blueprint neutron-provider-networking

Change-Id: I4bad9483b92875ea5e143b0e11652e01faed35a4
Create an IPv6 network that uses an external router for IPv6

Change-Id: Id1498d74db816b3edbb8376ca5acb7cc5792ea5c
Update readme.md, heat is now enabled by default

Change-Id: Ia36879711aa440f4fba657159afeba2105c6aae4
chown stack/data/nova/networks to $STACK_USER

$USER may be undefined (resulting in an error exit from stack.sh)
or may be the current $USER rather than the target $STACK_USER
(which may or may not be the same) which could lead to errors
later.

This change brings about consistency: the rest of stack.sh always
uses $STACK_USER.

This same problem may be present in lib/marconi.

Change-Id: Idff2bee88de4e1da11cd5765a03646caf3ede24f
be a little more clever about interface default

the interface default of eth0 has become more wrong since we've
got a generation of Linux distros that don't use eth* as their
interface naming. Instead of that do a slightly more clever, but
probably still wrong thing, of picking an interface that exists
and is a physical interface.

This is still overridable, however won't cause really cryptic
failures in nova-compute because it's trying to use an interface
that doesn't exist *really* late in the network creation.

Change-Id: I93016ff5a25678de76254418155c839a269486a0
Merge "Update readme.md, heat is now enabled by default"
Merge "Add support for creating provider networks"
Fix the way Apache site configuration files are used, to improve OS portability

On Ubuntu 14.04, the site configuration file must have a .conf suffix for a2ensite and a2dissite to
recognise it. a2ensite and a2dissite ignore the .conf suffix used as parameter. The default sites'
files are 000-default.conf and default-ssl.conf.

On Ubuntu 12.04, the site configuration file may have any format, as long as it is in
/etc/apache2/sites-available/. a2ensite and a2dissite need the entire file name to work. The default
sites' files are default and default-ssl.

On Fedora, any file in /etc/httpd/conf.d/ whose name ends with .conf is enabled.

On RHEL and CentOS, things should hopefully work as in Fedora.

This change puts all distribution-related site configuration file name differences in lib/apache and
the other services gets the file name for its sites using the new exported function
apache_site_config_for <sitename>.

It also makes Fedora disabled sites use the .conf.disabled suffix instead of removing the .conf from
the file name.

The table below summarizes what should happen on each distribution:
+----------------------+--------------------+--------------------------+--------------------------+
| Distribution         | File name          | Site enabling command    | Site disabling command   |
+----------------------+--------------------+--------------------------+--------------------------+
| Ubuntu 12.04         | site               | a2ensite site            | a2dissite site           |
| Ubuntu 14.04         | site.conf          | a2ensite site            | a2dissite site           |
| Fedora, RHEL, CentOS | site.conf.disabled | mv site.conf{.disabled,} | mv site.conf{,.disabled} |
+----------------------+--------------------+--------------------------+--------------------------+

Change-Id: Ia2ba3cb7caccb6e9b65380f9d51d9d21180b894e
Closes-bug: #1313765
Remove copy of cinder.conf.sample file

Rather than continue to be bit by conf updates
from external sources, Cinder is going to join
the party and cease generation of the sample.conf
as part of the unit tests.

First step however is to not attempt to copy it
from cinder/etc/cinder in the devstack setup.

This just removes that cp operation, nothing
in that sample conf was modfied from defaults
so it wasn't really doing anything anyway.

Change-Id: I727b1747ff36d775ef881e93e3b9a8528a17a4df
Merge "Create an IPv6 network that uses an external router for IPv6"
Merge "be a little more clever about interface default"
Merge "Remove copy of cinder.conf.sample file"
Merge "Fix the way Apache site configuration files are used, to improve OS portability"
be opinionated: only use get-pip.py

get-pip.py is now on a CDN, and is the prefered way to get pip.

Remove the default path of using pip tarballs from pypi and use
get-pip.py on from here on.

Closes-Bug: #1326539

Change-Id: I0661f7c6913ba6b3e1d00b30e22740d150bfd060
Merge branch 'cinder-backends' into dt-test
Merge branch 'usb-prereq' into dt-test
Merge branch 'conf-tempest' into dt-test