Add ccache support to Makefile

[Continuing the march of Tiny Non-Feature-Impacting Improvements.]

ccache helps when switching between many
branches.  It just caches the previously
built object and puts it in place on an
unchanged re-compile.

You can even do the clever thing of having
a post-checkout hook to automatically re-build
your current directory (the build should happen
in less than a second if you've previously
build the branch you're switching to).