Tarball with a fixed production date

Building binaries from a tarball distribution generated by, e.g.,
"make dist-gzip" now uses the date on which the tarball is generated for
PRODUCTIONDATE by default. This is implemented as follows:
- "make distdir" generates production-date.h in the distribution
  directory, thus in the tarball. This date can be controlled by
  DATE="..." in the arguments of the make command. If the DATE variable
  is not specified, the date of the last commit to the Git repository
  is used, if available. Otherwise, the current date is used.
- The configure script defines HAVE_PRODUCTIONDATE_H if
  production-date.h is found in the source directory. It makes config.h
  include production-date.h.

Handling of make DATE="..." is changed such that it does not pass
-DPRODUCTIONDATE="..." when DATE is not specified or empty. (In the
previous version -DPRODUCTIONDATE=__DATE__ was used for those cases.)
It also avoids the problem that GNU make unites spaces at substitution
reference: DATE="Sep  1 2013" was effectively transformed as
DATE="Sep 1 2013" in the previous version.
Add .gitignore file

This .gitignore file contains only untracked files generated by the
build system. For other files depending on your environment, e.g.,
temporary files or backup files create by your editor, you can set
"core.excludesfile" for the global setting, or add lines to
.git/info/exclude file for the local per-repository setting.
(cf. https://help.github.com/articles/ignoring-files)
Remove clang -Wself-assign warning in Bernoulli()