Added Mac OS compatibility [Issue #1]

Read commit messages for more details. I've used the preprocessor to conditionally compile code for `(TARGET_OS_IPHONE || TARGET_IPHONE_SIMULATOR)` or `TARGET_OS_MAC`. There are obviously some details that don't translate, so I have attempted to provide sensible defaults.

I have not added more fields to the library that are specific to Mac OS yet, as I don't know enough about the integration with the web component. I have also not tested this code beyond compilation as part of the reason for making it work on Mac OS was so that I could test Squash in my own projects. Most of the changes were preprocessor conditions though, so compilation should be a valid test for most issues that would arise.

I have fixed what looks like a bug in the CoreLocation delegate code, see 0cb64214288737d3f543ddd20567f4bc3c047f29.

There should be no compiler warnings for any of the targets (iPhone, Simulator, Mac) although the ISO8601DateFormatter seems to assume 32bit systems, so I have submitted a separate pull request to the maintainer of that repo to fix those warnings.

I recommend a rename of the repository from iOS to something more appropriate if this pull-request is accepted.