CAR-1368: Add utility function for calling python functions with a timeout

Signed-off-by: Robert Breker <robert.breker@citrix.com>
CAR-1368: Enable online expansion of LVHDxSRs

Attempt to expand the size of LVHDxSRs by growing into additional available
space, if extra space exists on the backing device during sr-attach of the
master or sr-scan.

If the master detects that the LUN has been resized, it will synchronize
with the slaves. If all nodes succeed to refresh the size of the LUN, the
master will go ahead and resize the PV.

This commit superseeds the limited undocumented functionality to expand LVHDxSRs
which we had before. The master used to do the resize after a reboot during
sr-attach. Pool members needed to be rebooted after the master as there was no
synchronzation between pool nodes.

Signed-off-by: Robert Breker <robert.breker@citrix.com>