disconnect method now closes the underlying transport