makes x11_start_program() more flexible with timeout