Split out all Objective-C objects into their own files.
Split Delegate, and implement events and synthesizers.
Update MSVC project files.
Add new headers, and remove deprecated macro.
Add Mac paths and files to .gitignore.
Update project files.
Update names and ensure MacOSX build.
Ensure build and cast parameters as appropriate.
Add preliminary conformance tests.
Event synths should not immediately trigger handlers.
Code Overhaul

Remove IString. Add uniform initialization, internal use of smart
pointers and STL containers, rely on ARC for Mac.
Fixes Linux build. Unresolved event delivery error.
Fix files for merge.