doc: Adding a configuration guide.
Adding generate-lircrc script.

This script simplifies both checking that lircd.conf conforms
to using symbols in the the namespace and creating .lircrc
templates for some well-known applications.
gitignore: skip git generated stuff and garbage.
Fix whitespace issues, new fix-whitespace script.

Use tabs instead of spaces, strip trailing whitespace (i. e., kernel
formatting conventions).
config_file.h: make static variable in header public.

all_flags was declared static which doesn't really make much sense
in a header file.  Follow the standard pattern with the real stuff
in the implementation config_file.c and an extern declaration in
header file.
Removing lirc_igorplugusb
Removing bt_829
Removing ttusbir.
Remove serial driver
Removing atiusb
Removing lirc_parallel
Removing lirc_sir
Removing lirc_imon.
Removing lirc_sasem.
Removing lirc_gpio.
Removing lirc_i2c.
gitignore: Update.
Adding a lib directory.

Copy common parts from daemons to new dir.
lib: Adding ccan configuration file library (MIT licensed).
lib: Official header, logging and  lircd_base added.

Old file lirc.h is now lirc_base.h. The new lirc.h is the official
header file which just pulls in other files from lib.

New common parts in lirc_log (logging) and lircd_base. The latter
is (unfortunately) needed by the plugins, it's a large pile of
code extracted from lircd.c. The interface between lircd.c and
lircd_base is thus a mess, and no other client should ever use it.