code cleanup

unified external command execution syntax
added "strict" preload strategy and --check option for integrity checking
of configuration and secrets
Packaging for Linux.
added license
minor fix
license update
Merge pull request #3 from aleibl/develop

Packaging for Linux.
fixed typo
error checking and other improvements to KeyNanny

- isolated KeyNanny communication to dedicated class
- added error code handling in protocol
- support setting values in keynanny
- squelch keynannyd startup messages and move children into process group
merged KeyNanny and KeyNanny::Protocol
properly invalidate cached results if storage file
has been updated
read /etc/sysconfig/keynanny or /etc/default/keynanny in startup script
fixes for obtaining certificate serial number (older versions of
OpenSSL behave differently from newer ones)
protocol improvements

server now handles multiple requests in same connection.
added timeout on server socket connection
modified KeyNanny::Connector to use protocol
amended missing file in packaging
cleaned up package spec file
moved keynannyd to /usr/sbin
missing /etc/keynanny directory in packaging
added globbing feature

it is now possible to use wildcards in the certificate configuration
of a token. the wildcard (and any other portion of the string) may
be enclosed in round brackets, e. g. foo(*).bar
in the key definition captured matches can then be used as $1, $2 etc, e. g.
certificate: $(crypto.base_dir)/kn(*)-cert.pem
key: $(crypto.base_dir)/kn$1-key.pem
additional log information