Change reloads to make asynchronous calls to avoid timeout

Previously, the reload call was single threaded which meant that the call would return when the reload was complete.  However, if reload time is greater than the apache proxy timeout (or rest client timeout) then the reload would appear to fail when infact it hadn't

Amend the code so that the reload is kicked off in a child process, and then fetch the reload status every few seconds until it is complete.  This should avoid errors from timeouts.