The wrapping of xdr.send() in a timeout function has caused problem for some. Changed it to the other solution where the ontimeout and onprogress callbacks are present. Also changed the reject method to take a msg parameter since the function is also used when a timeout occurs