Fixed OpDialogue hangs caused by lots of messages.

An Op being run in a background thread can queue up messages at a rate of knots, causing MessageWidget.appendMessage() to be called recursively from the processEvents() method used to update the UI. Guarding against the recursion allows us to keep the UI updated without running out of stack.
Merge pull request #700 from johnhaddon/messageWidgetRecursion

Fixed OpDialogue hangs caused by lots of messages.
bumped versions to latest public release
fixes error which was preventing screen grab with expanded groups from running
updating for new year
Merge pull request #702 from bentoogood/docsWIP4

Tweaks to update docs version and fix for small build issue
Updated Changes file.