Faster map preview generation.

Some changes that make map generation fast enough to look mostly instant.

One change was to no longer show the placeholder widget in the preview. I've just removed it in code but if there's a more sensible place to remove it (a template somewhere?) could you point me towards it.

Resolves #3732 by just making the delay a non-issue.
I'm on the fence as to whether changing this from a property to get/set functions is a good thing.  This does have side-effects, but they are an implementation detail of the map preview and aren't something that outside callers need to worry about.