some todo's and comments, doens't seem to send the pre-buffer correctly the second time around if connection drops in the middle. Need to fix that. Also re-calculate the md5 each time the connection re-connect. This is not nessesary.