Updated delegate protocols to be class protocols; delegates now updated to be weak variables.