Move file name handling to SourceFile and some small fixes.
Add static linking to Makefile.

This is useful for Windows. I can now create a Windows executable
using MinGW via Cygwin like this:
  $ CXX="i686-w64-mingw32-g++.exe" make STATIC=1
Fix typos.
Add man page (does not get installed yet).