Delegate should be weak, and formatting fixes.