2.4.2:
- Fix a fake out-of-memory condition in 'cnew'
- Fix stress test
- Documentation fixes

2.4.1:
- Fix parameter parsing in specific commands (export, passwd, import).
- Fix compilation on FreeBSD

2.4.0:
The new encrypted database format is incompatible with older (< 2.4.0)
versions!
However, the XML format has not been changed, so a dump/importxml is adequate,
to use the new program version:

This example presumes that the default database filename is being used (ie.:
substitute the database filename if necessary).

========================= 8< =========================

(1) =>	Execute the old kc (< v2.4), and dump the database to an XML file before
	upgrading

$ kc -k ~/.kc/default.kcd
Password:
<example_chain% > dump kcdump
Dump OK
<example_chain% > quit
$ ls kcdump.xml
kcdump.xml


(2) =>	Backup(!) (and move away) the old database file

$ mv ~/.kc/default.kcd ~/.kc/default.kcd-backup


(3) =>	Upgrade kc to v2.4

[However you handle this: from source, packages etc...]


(4a) =>	Execute the new kc (>= v2.4) and create a new, empty database file, then
	import the previously dumped XML file.

$ kc
Creating '/home/user/.kc/default.kcd'
Using '/home/user/.kc/default.kcd' database.
New password (empty to cancel):
New password again (empty to cancel):
<default% > importxml -k kcdump.xml
Import OK
<example_chain% > write
Save OK
<example_chain% > quit

(4b) =>	Reopen the new database and check for any anomalies just to be sure :)

$ shred --remove kcdump.xml   [or equivalent, eg.: rm(1) -P]

========================= 8< =========================


Functional changes, improvements:
- New -P option to specify the KDF to use when dealing with database passwords.
  Previously, only SHA-1 PBKDF2 was used. Now the supported KDFs include
  SHA-1 and SHA-512 PBKDF2, blowfish based bcrypt, and scrypt if kc was
  compiled with libscrypt.

- The new default KDF is SHA-512 based PBKDF2 (the old one was SHA-1). This also
  breaks compatibility with older databases, but could have been worked around
  easily with the new -P option (open db with -P sha1, and change password
  with also changing the KDF to sha512), but would have been futile, because as
  mentioned above, the encrypted db format also has changed.
  Also, OpenSSL versions before 1.0.0 does not include the function needed
  with the new default KDF, so kc now strongly depends on OpenSSL 1.0.0 or
  newer.

- New database encryption cipher, blowfish is available. The default remains
  AES-256-cbc.

- New -c and -C option can be used to switch to the specified keychain after
  opening the database.

- Introduce new hotkeys while in value displaying, for copying 'values'
  to various clipboards:

  'x' will copy to PRIMARY X selection,
  'X' will copy to CLIPBOARD ("^C -> ^V") X selection,
  't' will insert the value to tmux's paste buffer.

  'x' and 'X' uses xclip(1): the 'value' is sent to its stdin.
  't' uses the tmux binary of course, and it just calls the set-buffer
      command with the 'value' as its parameter.

  Both binaries must be in PATH, and if they can not be executed, an error
  message gets printed.

  Removal of the 'values' from the clipboards are not being dealt with (!!!),
  it should be the user's responsibility.

- New commands 'tmux', 'xclip', 'Xclip'. They provide the functions previously
  described, but without opening the key; this works directly from the CLI.
  A line number can also be specified when dealing with multi-line values.

- New command 'near'. Display the key with the given index and its surrounding
  keys. It gives context around a key with a known index number.

- New option '-B'. When used along with -b, force kc to prompt for a password,
  even in batch mode.

- 'passwd' command can now change KDF.

- 'xport' command has been renamed, and it's now called 'export'.
  Also, the command can now specify KDF and cipher mode, and it now has
  options and arguments to specify its every parameter.

- 'import' command can now specify KDF and cipher mode, and it now has options
  and arguments to specify its every parameter.

- The 'new' command's first parameter (if specified), the key, now works with
  spaces.

- 'clist' command now displays also the keychains' description.

- IV and salt sizes were increased.

- Maximum number of keys and keychains are now determined at compile time (the
  maximum of an unsigned long integer on the specific platform, minus one).
  This is a theoretical limit; I'm pretty sure the XML handling gets funky way
  before this limit is reached :).

- Project moved to github.

- General documentation improvements and extensions.


Bug fixes:
- Plug in leaks.

- Cygwin compatibility fixes.

- Documentation fixes.
