Interruptable script closures

Added the ability to execute Interruptable script closures while
displaying buttons, timeout is handled via clicking the button and
intercepting the choice result, resulting in multiple timed buttons