Implement pubsub signalling system and use it for progress notification
Progress notification in selected plugins; Progress display in CLI
Replace dispatch module with blinker for pubsub; Add signal docstrings
gui: Implement progress bars for postprocessing and output generation
scantailor: Fix bug where output step would be run during config preparation
scantailor: Implement progress notification for configuration generation

To get a look into the ScanTailor 'blackbox', we use the 'psutil' module
to get a list of files opened by the ScanTailor process every 100ms.
With the knowledge of how many images there are and which steps are run,
we can calculate how far into the process we are.
Add logging signal
web: Add websocket server
Add missing 'psutil' dependency for ScanTailor progress notifications
web: Add missing utility method for websockets server
Refactor Workflow class to get rid of most class-variables
workflow: Use context-manager for lock in capture method
web: Use 'Event' class to abstract signals
web: Get rid of '_to_dict' utility methods and use a custom JSONEncoder
web: Simplify workflow caching
web: Simplify thumbnail caching
web: Remove PyPy compatibility for USB transfer
web: Client-side event system
web: Implement progress display for file transfers; SCSS refactoring
Update tests