Added a listener from config loading util.
Also fixed it so that listener constructors can have derived classes as
arguments