Reduce warnings (64-bit Clang), add helper functions, bugfixes

Fixed a lot of warnings that 64-bit OS X Clang was emitting, with the help of a friend running OS X. Some of the warning fixes are also bugfixes. Lots of them were type mismatches.

Possibly fix how artifacts are saved? At least make everything match now.

Some Makefile changes that allow compilation with Clang, if you set the CXX environment variable in your shell. Doesn't have -Weverything turned on yet, because *yikes*.

Extract most of the player::activate_bionic function into various bionic-specific helper functions, because we had to split one temporary variable into two, and didn't trust a visual scan to (necessarily) reveal all the cases where it needed fixing. Also refund power in a few more cases where a refund should happen, and make the water evaporator give you clean water (rather than plain water with no poison that I could see).