date: Fix vary.c so it'll compile on non FreeBSD platforms

The following changes were made:

1. #define __FBSDID if not already defined
2. #include <config.h>
3. add __attribute__ ((pure)) to function trans()
4. fix whitespace

Non-FreeBSD platforms don't define __FBSDID(). config.h is needed by
various files in lib/. The absence of attribute "pure" lead to a
compiler warning, with GCC suggesting attribute "pure" be added to the
function. Since warnings are treated as errors in coreutils, this, too,
prevented vary.c from building. Lastly, the final change was due to GIT
complaining about whitspace problems.
date: Add vary.[ch] to the build

We add vary.h to noinst_HEADERS and define src_date_SOURCES, since
"date" now depends on more than one source file.
date: Add vary functionality.

We modify date to recognize the command line options -v and --varity
and to call the appropriate vary functions.
date: vary usage and man-page

Added -v/--varity command line argument to usage(). Also added examples
on how to use the feature.

The full description of the syntax was added to the date.x file.

All examples and descriptions were taken straight from the FreeBSD
man-page.