Listen for pass/fail events and broadcast progress
Move broadcaster into library, use in all exercises, refactor notifier slightly