packaging: setup: re-write using otopi

OUTLINE

We introduce a complete rewrite of ovirt-engine setup, which includes
engine-setup, engine-upgrade, engine-cleanup.

The new implementation is installed side-by-side, user may have a choice
which implementation to use.

COMPATIBILITY

Implementation are incompatible, once setup using legacy, upgrade and
cleanup will not work using the new implementation and vise versa.
Answer file is not compatible between implementations.

Implementation is not feature complete, setup is almost complete,
cleanup needs more work to clean files that where partially modified,
currently, setup is not able to upgrade non-new implementation setup.

MAJOR FEATURES

Fully support development environment installation.

Up until now, developers had maintained parallel environment, manually
customized, partial featured.
Now, developers may setup product much like production using unprivileged
user, custom location and custom database. For more information refer to
README.developer file.

Platform independent implementation

The new implementation can/should be able to run in multiple
distributions, setting up valid engine environment. So far tested
fedora, rhel, centos, gentoo, ubuntu.

Database access

Split between host provisioning and database setup.

Host provisioning is the part setup can configure the database package on
host to be able to serve the application. The provisioning phase is now
completely optional and is supported only at legacy distributions.

Database setup is the part that a schema is created in existing
database. This enables the dba to provide ovirt administration
unprivileged database user and database for his use.

Implementation

Pluggable, mission centric, consistent, modern, customizable implementation.
Reuse the otopi infrastructure that is also used for host-deploy, and
future reuse of setup for dwh and reports components.

Change-Id: Id587977be496f979f692ee5fd06a4e264d3f9197
Bug-Url: https://bugzilla.redhat.com/show_bug.cgi?id=911191
Signed-off-by: Alon Bar-Lev <alonbl@redhat.com>
Signed-off-by: Sandro Bonazzola <sbonazzo@redhat.com>
Signed-off-by: Alex Lourie <alourie@redhat.com>