View controls are now complete, and also correctly interrupt runloop