Moved the listener to its own package.