better signal handling
work around http://dartbug.com/17752
work around additional bugs when working around dartbug 17752