The EU has allowed a new deadline of April 12th if May's deal is rejected in parliament again, after that the UK will have to allow MEP elections if it wants a long extension. If May's deal is agreed then the UK will have until May 22nd to pass all the legislation needed... presumably if we get to April 12th and don't want to do MEP elections we will have until May 22nd to exit on a no-deal basis with no option to revoke article 50 because we didn't have MEP elections, required under EU law... or does the fact that we did not have MEP elections mean we can not be in the EU beyond April 12th even though they are not going to sit until July 1st? No, if we can stay in until the 22nd to pass legislation should be able to stay in to that date to leave on no-deal... you can sort of see it gives the UK/EU some wriggle room to do a no-deal exit on painless terms if both sides want to (perhaps a transition with similar payments to the previously agreed interim period?).
If the speaker allows a third vote on May's deal then it should be the final vote, either Mrs May comes up with a new concept or she lets parliament do so but given the utter hopelessness of the opposition leadership don't hold your breath. Commonmarket 2.0 would be an utterly pointless Brexit and a bit dangerous as we would have little say in EU laws but still have to obey them - as a (five year) transition period it might not be too bad, though.