Medbay/Genetics machinery fixes

Some general fixes for MedGen machinery :

* Prevent being able to open/close/interact sleepers, cryo tubes and DNA scanners when in various conditions (weaken, ...) and by non-humans/non-silicons.

* Fixes possibles infinite loops runtime (fixes #5527)

* Added icon updating on power changes/maintenance to Cryo Tubes and DNA Scanners (using the maintenance icon for unpowered DNA Scanners, since we don't have one for this state)

* Unpowered DNA Scanners can no longer be used even if the associated computer is powered

* Cryo cells and sleepers won't work when powerless anymore.
Same with cloning pods and DNA Scanners used by cloning computers.

* Added an "is_operational" proc to machinery instead of duplicating the same check over and over (only asks to expand to the rest of machinery !)