Some checks can and should be done before MH gets even started (i.e. before the JVM gets instantiated), other should be done by the supervisor module (e.g. node XYZ is running v1 while all others are on v2). A clear distinction should be made and documented amongst these checks.
Moving this to develop, as nobody is currently working on it and it will probably not make it to 1.6.0