CA-115938: Repair VHD footer in case of a corruption

During a coalesce operation, parent VHDs could end up with corrupt footers
in case of Out of Storage errors. The fix try a repair parent after a
failed coalesced operation. The scenario where runAbortable kills the vhd
coalesce process is also covered.

Signed-off-by: Vineeth Raveendran <vineeth.thampi@citrix.com>
Reviewed-by: Thanos Makatos <thanos.makatos@citrix.com>

GitHub: closes #102 on xapi-project/sm