use ceph-detect-init for init system logic
Right now ceph-deploy carries intrinsic knowledge of which init system to use on a given host, based on a combination of host operating system, operating system version, and the presence of specific files on the system (post ceph installation).
However, Ceph has a tool, ceph-detect-init, that was introduced in Ceph 9.0.2, that should be used instead. This will help cover cases on Debian where the init system is a runtime option rather than a compile/install time option.
Since ceph-detect-init is only present in the 9.x series (Infernalis), we will still need to have a fall back to a defined map of init systems.
Doing this work is the right time to refactor the init system code into a class-based approach.