Fixes for detection of <unordered_map> vs. <tr1/unordered_map>, 64-bit Darwin.

Hello! This is so cool looking, I can't wait to try it out! But I ran into an immediate little problem though, the defines you were testing to determine whether to use `<tr1/unordered_map>` vs. `<unordered_map>` were wrong on my machine, and when I looked at it I saw there were a few other cases that it would be returning the incorrect header, especially on Darwin. Let me know if for some reason you think this is wrong, but I'm pretty confident that it now covers the various cases correctly.

Also, I saw in the samples makefile how you were trying to correctly detect 32- or 64-bit on Darwin, which can be very tricky, because some versions of Mac OS X which are in fact fully cabable of running 64-bit binaries run a 32-bit kernel and Unix subsystem. So I went ahead and covered up the gaps there, if thats ok!

  :)

~Geoff