Re: What I don't get...
Free movement of people was previously based on the availability of work. That was changed fairly recently (Lisbn, I think?) to allow speculative migration - moving from one country to another to look for work - as opposed to the previous free movement of labour - moving from one country to another after acquiring work. The latter was working just fine. The former created just about every problem that provoked brexit in the first place.
Fortunately (assuming that the government gets its head around the issue) there is a solution. The UK can remain in the EEA and invoke article 112 of the EEA agreement (an article similar to which previously existed in EU treaties but was removed for some inexplicable reason in the Lisbon treaty), which would allow it to restrict free movement to those who have already found work, or prevent migration entirely if it so desired.
This neatly sidesteps both leaver and remain waffling about the whole issue. The UK retains membership of the common market, gains better control over migration, avoids the political integration inherent to the EU project, and regains a seat at the UN organisations that decide most international regulation that the EU repackages as regulatory directives. On top of that it can start to untangle some of the less beneficial legislation the EU has handed down in the past.