init: Adding ONFAILURE parsing

If we need it to be override on the cmdline, it have to be interpreted
init.common: Create dhclient file if needed

On redhat/centos, the file didn't existed and lead to an error making
everything exiting.
init: Adding set_path()

On redhat/centos, it's important to force the PATH to insure the shell
to find its binaries.
init.common: Using give_up if no network

give_up is made to handle an error properly regarding user's will. Don't
try to reinvent how to proceed if no network found.
health: Adding ONSUCCESS|ONFAILURE support

As per pxe role, let's support ONSUCCESS and ONFAILURE
init.common: Adding sleep in probe_pcidevices

I had a case with centos where the device didn't got ready at the end of
the function leading to no network interfaces when trying to setup the
network.

This is weird to sleep but it worked...
bugfix : procfs is not mounted

base.install depend on functions as common_setup() need to be called before install_base_packages()

Signed-off-by: Nicolas PLANEL <nicolas.planel@enovance.com>
bugfix : procfs is not mounted after bootstrap()

New Callstack :
 bootstrap()
 common_setup()  # setup configuraiton files (fake grub, mount /proc /dev /dev/pts, setup trap cleanup)
 install_base_packages()

Signed-off-by: Nicolas PLANEL <nicolas.planel@enovance.com>
base.install: Free /dev & /proc if bootstrap fails

When bootstrap fails, it does not free /dev & /proc. Let's protect it by
enabling trap.
common: Try lazy umount after 8 tries

clean_mount_points handle virtual filesystem, we can try lazy umount
after 8 tries.
common: mount /proc in bind

Let's use the same way on mounting /proc as the other /dev & /sys.
On one system, it failed and this commit solved the situation.
common: Using do_chroot

On some distro, we need to enforce the path to chroot, so let's use
do_chroot for that.
common: create /var/lib/edeploy if not existing

Since common_setup is called from base, we need to create the dir unless
it fails and break the complete setup.
packages: Adding get_openstack_mirror()

This helper is made to ease the definition of the openstack
repositories.

The default value can be overided by OPENSTACK_REPOSITORY variable
common: Removing lazy if umount succeed

This is mandatory to avoid massive lazy umount
base.install: umount virtual fs after bootstrap

Since commit 978c6e2c274aa730671e1c07a375ab12142b4610, common_setup is
called just after bootstrap. As bootstrap didn't umount /dev & /proc, it
made them mounted twice.
openstack-common: Fixing typo

As per commit 2be46380ffffab079eae754a5596576e3cfee268, there was a typo
in the name of the function... Should not commit so late :/
packages: Fixing rdo package name

In fact, that's a noarch rpm. Let's fix the name accordingly.
general: avoid direct “rpm -i” invocation

yum maintains its own cache and the direct call of “rpm -i“ is enough
to get it outdated.
common: add TODO regarding cleanup() and pxe.install