Added Mac OS X build to makefile

As an temporary hack introduced a darwin target for the Mac OS X which
does not support the PIE Clang flags.

In the future some sort of autoconf system would be cleaner.
Added range checks for Armor and Crew

Added out of range exceptions to Armor and Crew in order to provide
faster fail in case of invalid input.
Added Xcode state files to ignore.