Refactored CommandBase out to HandlerBase so ListenerBase won't have so much copy/pasted gabrage