ate IOException
moved runner parameter to constructor
added shutdown monitor