cdda: CID 610847: possibly uninitialized fields

In two cases:
* Out of memory and strdup on fName failed. Nothing would be
initialized (mostly harmless: InitCheck would detect this)
* There are no frames in the track: the wav header would be left
uninitialized, and this would be readable from userland (bad thing, but
needs a specifically crafted malicious CD to happen).
Update udis86 to current version.
KDL disassembler: implement symbol lookup

The new udis makes it possible to hook a symbol lookup function, so we
can get symbol names and offsets instead of raw addresses in call and
jump instrucitons.
guarded_heap: fix build (volatile + atomic ops)

Unfortunately, the package manager uses more kernel memory and it's not
possible to boot to the desktop with the guarded heap anymore.
cdda: fix possible buffer overrun

If the requested read was more than 32 frames, and reading them all at
once failed, we would try to read by chunk of 8 frames. But if the
original frame count was not a multiple of 8 we would not adjust the
count for the last read.

Unfortunately I could still panic the system after fixing this, so it is
not *the* cdda bug.
Update curl and libpng packages, add libpng16 packages.

* curl: security update for CVE-2014-3707
* libpng16 can be installed next to libpng, libpng16_devel cannot be
installed next to libpng_devel (only one of them).
Build against libpng16 instead of libpng.

* Also migrate freetype at the same time, otherwise freetype_devel
wouldn't install anymore.
Debugger: Fix disassembler to handle newer udis86 API.

In newer versions of udis86, the ud_t.mnemonic field is deprecated,
and one must now call ud_insn_mnemonic() to retrieve that information.
This was causing Debugger to not correctly identify subroutine calls
and jump instructions, which broke the stepping code in various fun
ways.
Debugger: Adapt x86_64 disassembler to newer udis API.
Update pci.ids from pciids.sourceforge.net
Start of a virtual keyboard input_server add-on

Done during GCI 2014.

Some files copied from the Keymap preferences.
virtualkeyboard: Add input_server device add-on code
virtualkeyboard: some fixes

Add initialization helpers.
virtualkeyboard: fixes; input_server now displays keyboard
virtualkeyboard: fix input_server event loop crash
virtualkeyboard: add TODO list
virtualkeyboard: add TRACEing and make the keyboard work
virtualkeyboard: Create README.md
virtualkeyboard: use US international keys for now

Update TODO list.
virtualkeyboard: add to the build