OTHER: Organize header files in the cli.
OTHER: Make cli_infos_t struct opaque.
OTHER: Remove dep on cli_infos_t in status.[ch]

Since all callbacks take a user data parameter, an API user can
just as well pass the cli_infos_t there instead.
OTHER: Use GLib gettext in cli and remove now unused headers.
OTHER: Move more code into cli_infos from main.
OTHER: Split cli build into objects and executable.

The reason for this is to make it possible to write unittests
by simply adding 'use = xmmscli' to the test suite.
OTHER: Add a unittest for command_trie.
OTHER: Tweak valgrind flags for test execution.

Adds --num-callers=20 to catch more recursively deep problems, and
fills used/unused memory with easy to spot constants that may help
find memory corruptions.
OTHER: Fix leak in command_trie lookup.
OTHER: Rename command_context_t -> command_t.
OTHER: Rename cli_infos_t -> cli_context_t.
OTHER: Don't treat "no position" in playlist as an error.

current_id from the output object will return 0 if no song has been
initialized yet, so this change makes them behave the same way.

Additional motivation for this is that the broadcast version of the
current_pos command emits -1 when there's no active position in the
playlist.
OTHER: Always handle playlist position as signed int.
OTHER: Use XMMS_CALL_CHAIN for playlist_length_get/currpos_get.
OTHER: Sort output of 'xmms2 server config'.
OTHER: For 'xmms2 add', if no position, assume append.
OTHER: Add test checks for playlist position on _replace.
OTHER: Cleanup

Re-enabled nellymoser (ffmpeg appears to be okay with it now)

Fixed possible infinite loop in the code that handles the data (if any)
between the header and tag data.
OTHER: Rename constants to something more readable
BUG(2276): Set duration proper

This adds an AMF reader which allows us access to
onMetaData's duration object and lets people see some interesting info
in the log if they ran xmms2d -v.

Also cleaned up byte swapping functions.