XCTest: fix Xcode crash when test invocation selector is not set

Xcode 6 now uses the test invocation selector name for display in the
test navigator. Because Kiwi test invocations were created without their
selector attribute specified, Xcode would ultimately end up messaging
NSNull, causing the crash.

This is a partial fix: all examples currently appear to have the same
name in Xcode, 'invokeTest'.
Move example selector generation into KWExample
Move test invocation creation into KWSpec; stop using "dummy" invocations

Previously, test invocations were only dummy invocations and were never
executed. Instead, -invokeTest would be called on the KWSpec instance
for each example.

This renames -invokeTest to -runExample, and ensures a valid test
invocation is created for teh -runExample method.

Invocation creation has also moved to KWSpec as it requires knowledge of
private KWSpec methods.
Ensure anonymous it nodes in the same suite have unique selectors
Merge pull request #545 from kiwi-bdd/xcode6-crash-selector-name

Fix Xcode 6 crasher caused by invalid KWExample test invocations
Add KWMessagePattern.h, KWSuiteConfigurationBase.h into Copy Files Phases which will include into Kiwi.framework
Merge pull request #572 from spritesun/master

Add KWMessagePattern.h, KWSuiteConfigurationBase.h into Kiwi.framework
add Subject Action Node
Update KWContextNode.m
Update KWExample.m