This revers what I asked for: the autoqueue will autoqueue on unit completion.
What this does is fix the A / autoqueue / B / C -> BCBCBCB repeat issue.
Add a GUI hack to show the 'ghost' units of the autoqueue, which make the current behaviour much more predictable.
This also disables the autoqueue if e.g. resources aren't available - it seems better given this otherwise changes the queue.