Xctool merges similar testsuite objects XML trees

Referencing issue: #141
Xctool was not compatible with Jenkins because the XML output from
xctool had different testsuite objects with the same name. The XML tree
is now merged by testsuite name.
Merge pull request #167 from sameenjalal/sameen/xctool_junit_merge_testsuites

Xctool merges similar testsuite objects XML trees.
XCTest OSX Test Project

* Added a test project that uses XCTest on OS X
* Added the `.xctest` bundle and `.dylib` that were compiled from the test project
XCTest iOS Test Project

* Added a test project that uses XCTest on iOS
* Added the `.xctest` bundle that was compiled from the test project
XCTest OSX Application Test Project

* Added a test application project that uses XCTest on OS X
* Added the `.xctest` bundle and `.dylib` that were compiled from the test project
Refactor otest-query

* OTestQuery.m refactored to reduce duplicate code
* OtestQuery.m has better exit codes and error messages
* otest-query's main.m has better error messages when given the wrong number of args
* Whitespacing for NSDictionary literals has been fixed
XCTest support for otest-query

* TestingFramework.m contains information about both frameworks
* Changed OtestQuery.m use information from TestingFramework.m
 instead of always using "SenTestCase" and "senAllSubclasses".
* Added unit tests in OTestQueryTests to check that otest-query
 gets the correct list of tests in both iOS and OSX projects
 using XCTest.
otest-shim refactoring

otest-shim has been refactored in preparation for XCTest support
XCTest.h added

XCTest.h, which is a class-dump of the XCTest framework, has been added in preparation for otest-shim's XCTest support
XCTest support for otest-shim & OCUnit* classes.

* Added XCTestLog_* functions in otest-shim.m. These are analogous to their SenTestLog_* counterparts, and call XCToolLog_*.
* Added XCTest.h to xctool proj
* Updated OCUnit* classes to use TestingFramework. This enables XCTest support for these classes.
* Additional information has been added to the TestingFramework dictionary:
  * iOS and OS X test runner executable names
  * the argument key for inverting scope
  * the argument key for filtering test cases
* Renamed the python script wrapping `ld` to reflect the fact that it now wraps `cc` as well.
* Removed the exception class name from reporter.m & update tests.
  (This is necessary because XCTest does not expose the NSException instance like SenTestingKit.
  Thus, XCTest does not know what the exception class name is.)
* Added test `testRunTestsFailsWhenSDKIsIPHONEOS_XCTest`, and gated it for environments where `XCTest.framework` exists.
* Added import to <execinfo.h> in test projects to get rid of compiler warnings