Invokes the registered procedure with the given name and sub-procedures. It computes the overall
Registers a health check procedure.
The procedure is a taking a of Status as parameter.
Procedures are asynchronous, and must complete or fail the given .
If the future object is failed, the procedure outcome is considered as `DOWN`. If the future is
completed without any object, the procedure outcome is considered as `UP`. If the future is completed
with a (not-null) Status, the procedure outcome is the received status.
Unregisters a procedure.