Objective-C protocols, categories, and extensions

Add description and examples of Objective-C categories and simulating protected methods. Also includes extensions and protocols description with examples.

The descriptions for categories is longer, but I felt categories need more explaining to see the value out of them instead of just creating a subclass. It also leads into extensions nicely.