exponential backoff logic based on this post: http://blog.johnryding.com/post/78544969349/how-to-reconnect-web-sockets-in-a-realtime-web-app
forgot to actually increment the "attemps" counter on connections;
add some comments about the generated interval