Added refresh cancellation support to DeleteUnusedBranches plugin

Just seen great idea from Henk and decided to improve it a little.

For some of my repositories searching for an obsolete branches takes a long time (up to one minute), so executing operation in UI thread causes GE to freeze and Windows to suggest close “hanged” application. I've extracted refresh operation to background thread and added cancellation support, so user may stop refreshing or close plugin at all if he don't want to wait.

Only thing I'm not sure about is copying loading animation from main project to plugin: should we somehow allow resources sharing or it's ok to have an independent copy?