Merge branch 'tpollard/loop_exception' into 'master'

scheduler.py: Handle exceptions that are caught under the event loop

Closes #1245

See merge request BuildStream/buildstream!1788