added client/server reconnect
big changes