Add centos7vps base image that works with puppet but fails with systemd

Without this patch puppet cannot successfully configure the LDAP service
in the docker container because there is no functional service
management framework.  The centos:centos7 image has the fakesystemd
package installed as a replacement for the real systemd package.

This patch addresses the problem by creating a new base image that has a
fully functional system management framework in the form of the real
systemd package.

Puppet is able to configure the LDAP service using this base image,
albeit as a process running in a container that has systemd running
already.

For example, the following works to stand up LDAP.  What remains is to
port this process over to the ldap/Dockerfile.

First, make sure you have the docker-enter command, installed into
/usr/local/bin using:

    $ docker run -v /usr/local/bin:/target jpetazzo/nsenter

Then, build the centos7vps base image, run it, and run puppet inside the
container.  Note that /puppet is mounted from the Vagrant VM into the container
at /puppet.  This directory is mounted as a shared filesystem with the host
relative to the Vagrantfile.

    $ docker build -t centos7vps .
    $ CID=$(docker run --privileged -v /puppet:/puppet -t -i -d centos7vps)
    $ sudo /usr/local/bin/docker-enter $CID

Inside the container:

    bash-4.2# puppet apply -v --node_name_value ldap --modulepath /puppet/modules /puppet/manifests/ldap.pp
    Info: Loading facts
    Notice: Compiled catalog for ldap in environment production in 1.05 seconds
    Info: Applying configuration version '1411075793'
    Notice: /Stage[main]/Site::Packages/Package[make]/ensure: created
    Notice: /Stage[main]/Site::Packages/Package[rubygem-bundler]/ensure: created
    Notice: /Stage[main]/Site::Packages/Package[gcc]/ensure: created
    Notice: /Stage[main]/Openldap::Server::Install/Package[openldap-servers]/ensure: created
    Notice: /Stage[main]/Site::Packages/Package[telnet]/ensure: created
    Notice: /Stage[main]/Openldap::Client::Config/Augeas[ldap.conf+base]/returns: executed successfully
    Notice: /Stage[main]/Openldap::Client::Config/Augeas[ldap.conf+uri]/returns: executed successfully
    Notice: /Stage[main]/Openldap::Client::Utils/Package[openldap-clients]/ensure: created
    Notice: /Stage[main]/Openldap::Server::Config/Shellvar[SLAPD_LDAPS]/ensure: created
    Notice: /Stage[main]/Openldap::Server::Config/Shellvar[SLAPD_LDAPI]/ensure: created
    Notice: /Stage[main]/Site::Packages/Package[sqlite-devel]/ensure: created
    Notice: /Stage[main]/Openldap::Server::Config/Shellvar[SLAPD_LDAP]/ensure: created
    Notice: /Stage[main]/Main/Node[ldap]/File[/identity.json]/ensure: defined content as '{md5}3fea1400bfa4716e51a28bced8f7e1fc'
    Notice: /Stage[main]/Openldap::Server::Config/Shellvar[SLAPD_URLS]/ensure: created
    Info: Class[Openldap::Server::Config]: Scheduling refresh of Class[Openldap::Server::Service]
    Info: Class[Openldap::Server::Service]: Scheduling refresh of Service[slapd]
    Notice: /Stage[main]/Openldap::Server::Service/Service[slapd]/ensure: ensure changed 'stopped' to 'running'
    Info: /Stage[main]/Openldap::Server::Service/Service[slapd]: Unscheduling refresh on Service[slapd]
    Notice: /Stage[main]/Openldap::Server::Slapdconf/File[/etc/openldap/slapd.d]/mode: mode changed '0700' to '0750'
    Notice: /Stage[main]/Openldap::Server::Slapdconf/Openldap::Server::Database[dc=jeffmccune,dc=net]/Openldap_database[dc=jeffmccune,dc=net]/ensure: created
    Notice: /Stage[main]/Site::Packages/Package[ruby-devel]/ensure: created
    Notice: /Stage[main]/Site::Openldap/File[/etc/openldap/data]/ensure: created
    Notice: /Stage[main]/Site::Openldap/File[/etc/openldap/data/jeff_user.ldif]/ensure: defined content as '{md5}fd506aa952f7bc2eb90ea39bd73f5837'
    Notice: /Stage[main]/Site::Openldap/File[/etc/openldap/data/groups.ldif]/ensure: defined content as '{md5}76d02e92946e5ecbdf375a32fe027d23'
    Notice: /Stage[main]/Site::Openldap/File[/etc/openldap/data/jeff_group.ldif]/ensure: defined content as '{md5}4d320620378e9ac39d659e94ea45102d'
    Notice: /Stage[main]/Site::Openldap/File[/etc/openldap/data/site.ldif]/ensure: defined content as '{md5}23d49a0d2d4ee0c9c7ab546639c45e9f'
    Notice: /Stage[main]/Site::Openldap/File[/etc/openldap/data/users.ldif]/ensure: defined content as '{md5}2e82c9608c202a00843d0c196d825a45'
    Notice: /Stage[main]/Site::Openldap/Exec[cosine schema]/returns: executed successfully
    Notice: /Stage[main]/Site::Openldap/Exec[inetorgperson schema]/returns: executed successfully
    Notice: /Stage[main]/Site::Openldap/Exec[nis schema]/returns: executed successfully
    Notice: /Stage[main]/Site::Openldap/Exec[dc=jeffmccune,dc=net]/returns: executed successfully
    Notice: /Stage[main]/Site::Openldap/Exec[ou=Groups]/returns: executed successfully
    Notice: /Stage[main]/Site::Openldap/Exec[ou=Users]/returns: executed successfully
    Notice: /Stage[main]/Site::Openldap/Exec[cn=jeff,ou=Groups]/returns: executed successfully
    Notice: /Stage[main]/Site::Openldap/Exec[uid=jeff,ou=Users]/returns: executed successfully
    Info: Creating state file /var/lib/puppet/state/state.yaml
    Notice: Finished catalog run in 30.15 seconds
WIP Update ldap dockerfile
WIP Modify the VM puppet code to work with `docker build`