Ceph storage tiers

This PR consolidates and automates all the ceph bits to dynamically calculate and set the placement group size (pg_num) of each pool and to also make it easier to change replica counts (size) on the fly. In addition to that, it builds the constructs in CRUSH for two storage tiers, SSD & HDD, and there are changes to cinder to support that through the UI and APIs as well.