Implemented a graceful disconnect and did some UI clean up

@davidfowl @mikary @abnanda1