KWValue support for stdbool.

KWValue could only wrap Objective-C BOOL type, but lacked support for
stdbool. As a result, `-[KWValue boolValue]` would raise an exception
when invoked with a wrapped `bool` value.

Add support for `bool` wrapping.

- Rename `KWObjCTypeIsBool` to `KWObjCTypeIsBoolean`, and have it return
  `YES` for both `BOOL` and `bool`.
- Add `NSNumber` conversion method for `bool`.
- Add tests.

Fixes issue #506.
Merge pull request #507 from modocache/fix-506-bool-encoding

KWValue support for stdbool.
Refactor to hide static KWObjectStubs variable behind C functions
Break infinite loop by using a block as a stubbed object key instead of the object itself
Refactor to hide static KWMessageSpies variable behind C functions
Rename KWObjectStubsKey to be more generic KWInterceptedObjectKey
Break another infinite loop caused by hashing an object with a message spy
Refactor to hide static KWRestoredObjects variable behind C functions
Rename Issue509Spec to have more descriptive name
Add doc comment for KWInterceptedObjectKey
Rename/reorganise tests in KWRealObjectStubTest.m
Remove unnecessary functional test in favour of existing unit test
Merge pull request #512 from sharplet/issue-509

Fix #509
Revise wrong wiki url on Readme.md
Merge pull request #519 from kaneshin/master

Revise wrong wiki url on Readme.md
Update wiki link in Readme.md

Pointed to allending/Kiwi wiki which doesn't seem to exist anymore.
Merge pull request #520 from mhallendal/fix-wiki-link

Update wiki link in Readme.md
s/allending/kiwi-bdd
use h1 and h2 for titles
s/png/svg