Added better modem initialization handling. We now wait for the modem to report Call Ready, or we timeout and assume the baud rate is wrong and set the correct baud rate. This works because the modem has some basic auto baud detection however at the wrong baud rate it never returns Call Ready as it can't determine the baud rate until we send it commands