improve reconnect

rename reconnect to reconnectNow
  * reconnect immediately
  * function returns failure mode on error

add reconnect function
  * retries when reconnect failes
  * waits exponentially increasing amount of seconds between attemps
  * returns last encountered error when all attempts fail
Merge branch 'master' into upstream
export reconnectNow from Concurrent.hs
twiddle with reconnect times
remove  waitingTimes function
split up reconnect function
make disco code compile again