added built-in class mock tolerance for handling description implementation for NS* container classes

For example, if an OCClassMockObject is inside an NSDictionary and some part of the test code calls -[NSDictionary description] (for example, when logging the contents of the dictionary to the console), then these isNS*__ methods are called on its contents.

It's reasonable to expect this to be tolerated since it shouldn't have any effect on test results, and is simply an annoyance to the tester to write extra for stubs for things that aren't relevant to the test.
added OCMAdditions category to NSProxy

this allows for partial mocking of mocks (for internal testing)
added tests for description handling stubs

apparently this is only a problem on iOS 6, so UIDevice is used to only expect the methods when the sim is running in iOS 6.
Revert "added OCMAdditions category to NSProxy"

This reverts commit 1bb77abe5f1da82d40a88ca5a111b86888ea5f27.
removed partial mocking of mock in description test

OCMock doesn't seem to handle mocking of proxy objects well.  I think this can fairly be considered a rare (and dubiously useful) case.  As such, I'm content with the test passing without verification that the __isNS* methods are being called.
changed isNS*__ method handling

partial mock would go into infinite loop when checking `isSubclass` instead of `kindOfClass`
added other "NSKind" methods

as derived from class-dump

Change-Id: I0a96142747f3d240c232a979ffad3a658a67c675
Merge pull request #51 from btgerst/bgerstle/desc-fix

Bgerstle/desc fix