better connect and disconnect flow

error messaging and button state changes for connecting and
disconnecting