Added the ability to listen to migration events.
Added a test for adding and removing listeners to the runner.
Switched the runner listener call to use Boolean instead of the primative to ensure they type hints work.