Implemented partial mocking/spying.

This commit does not include any documentation, so please refer to the test cases to see how it's supposed to be used. What's most important is to call disguise on the spy before using it. Also note that the syntax for stubbing void methods is a bit special. When reading the test cases, please keep in mind that I did not take the time to refactor them, so yes they could definitely be improved.

Another thing that is important to mention is that my implementation of partial mocking is partially based on the partial mocking from OCMock. I'm sure the license allows it, but I'm not exactly sure where to put copyright notice and such, so I didn't. Maybe I'm violating the license by not doing so, but if anyone can tell me how it's supposed to be done I'm more than willing to do it.
Merge branch 'feature/partial_mock'
Added copyright notice and license from OCMock as suggested by Erik Doernenburg.
Add PartialMock