#26318 global engine progress overlay

Adds **internal** functionality to pop a progress UI to indicate that a long running activity is happening:

![screen shot 2014-09-02 at 15 37 32](https://cloud.githubusercontent.com/assets/337710/4119980/122add82-32af-11e4-8f5e-618115a8eabc.png)

The intent is to use this for the path cache sync scenarios which may take longer than usual, for example a full sync. The progress only pops up on engines which have UI (QT) capabilities - other engines will log an info message instead.
Not convinced about the need for global in the method name.  It's ok in the file-level function but this feels like it's restating the same thing as being part of the engine.  Very subjective though so am ok for it to stay like this..!