Improved #22 - hopefully this will present a timeoutmodal when timeout occurs.