This allows using the error chan in an interface. Also moved the disconnect error into a named variable for checking specific errors.