Add build-config.hh header.

Still allows USE_EXCEPTIONS to be overridden, though now it's given a
default from the build configuration.

Also added snow.tostring to premake4.lua to account for some issues with
passing format options to format.rb.
Include build-config.hh from config.hh.

Also add HAS_* wrappers around relevant code. Only really applies to
HAS_SHA256 right now, since including lbind.hh just won't work if it's
excluded. Same for sha256.hh, but it was broken previously due to
snow-common.hh always including it.
Update README to mention snow-common.hh.