Implemented a graceful disconnect and did some UI clean up

@davidfowl @mikary @abnanda1 
We shouldn't need to pass the number of agents if we are passing the agentIdList