Added listener interface left out of last commit.