Huge clean up, name change and bug fix for double listeners