Configuring all dependencies in the manifests

This patch defines the last missing dependencies between the different
parts that make up a RADOS cluster.

The entire module should now have sane dependencies and except where
explicitely wanted, the integration tests should not need to specify
them anymore and have been updated appropriately.

Here is an overview of the dependencies:

When installing:
* packages:
  * need the repositories
* configuration (ceph_config):
  * needs the packages, so the base folder exists
* ceph::mon:
  * needs all configuration (ceph_config) to be done
* ceph::key:
  * needs the binaries (package)
  * if injecting configuration needs to be available (to find the
    address of the monitor)
  * if injecting needs the monitor to be available
* ceph::osd:
  * needs all configuration (ceph_config) to be done
  * needs monitors in the same cluster to be running
  * needs keys in the same cluster to be installed
* ceph::pool:
  * needs all configuration (ceph_config) to be done
  * needs monitors to be running
  * needs keys to be installed

When removing:
* ceph::mon:
  * needs the binaries (package) still around
* ceph::osd:
  * needs the monitors in the same cluster to still be available
* ceph::pool:
  * needs the monitors to still be available

Change-Id: I26933fcccdb4d953725070dc46456c36f2fee101