Minor cleanups.

We need to #include <string.h> to get strcmp().

In C++11, the explicitly user-defined copy constructors in "move.h"
prevent the compiler from implicitly defining better move constructors;
and my old copy constructors aren't doing anything useful anyway;
so remove them. Also remove the user-defined destructor, which again
blocks the compiler's implicit move constructor.
Get the Makefile working on both Linux and OSX.

Use "uname -s" to distinguish them (Darwin versus Linux).
Darwin uses libc++; Linux shouldn't need it.

This change also lets you set CFLAGS and/or CXXFLAGS on
your "make" command line, if you want; which means you can do

    make clean
    CXXFLAGS=-std=c++11 make annotate

in order to build with C++11. This is cleaner than my
old approach of sticking an "uncomment this" line in the
actual Makefile.