More consistent loading of 3rdparty modules, and add 3rdparty manifest

This change tweaks the loading of several of the 3rdparty modules
in apps. In all cases where apps require files from a PSR-0
compliant 3rdparty module, they now add the appropriate top-level
directory to the include_path and require the relative path from
there. This means they can be easily swapped out for systemwide
copies by downstream distributors.

The change also adds a MANIFEST file to the files_external 3rdparty
directory providing useful metadata for each 3rdparty module
included. The format is one I made up on the fly, please advise
if anyone is aware of a better alternative.