Clearly put, as ever, NJ. As to 'Why the change of heart?' - I don't believe there ever has been a change of heart. I think that he was always intending that we should stay in the EU and that he thought he could fool us and bluff his way through. According to Daniel Hannan, J-C Junker has revealed that Cameron assured him that he would use the referendum ""to dock Britain in the EU". There is probably a plum European job set up for him when he ceases to be P.M.
Well, you can fool some of the people all of the time, etc...