Clean up repo, use bootstrap from gnulib

I became impressed by other people's clean repos so I decided to clean up.
This commit uses bootstrap instead of having basically a distribution tarball
committed.
Enable warnings, resolve warnings

Found a bug that would have been caught by warnings.  Woops, thought they were
on already.  This turns them on and resolves the other warnings that popped up.

Also, normalize the headers across the source files.