show friendly error message when scheme references non-existent target

Squashed from:
Fixed the crash when xctool called on target with broken dependencies
fixed bug caused by changing garbageCollectionEnabled type
added test to check if we handle the broken dependencies
refactored the code replacing the buildSettings with testableExeutionInfo in method signature
renamed the test for broken dependency and moved the test data
added fake task handlers to testWillComplainWhenSchemeReferencesNonExistentTest
let each of the end-ocunit attributes be optional.
only check for TEST_HOST if build settings loaded.
when using blockToAdvertiseError:, we should always have annotations