I am hoping for some clarification on how Private vs Protected vs Public works with respect to class members when programming in Objective-C - I thought I knew the differenc
You are setting the visibilities of the ivars, not the properties. Your properties generate public getter and setter methods.
To make private properties, you can put the properties in a private category in the .m file.