Move listeners to own classes