Added documentation, changed API namespace to XJRA, also tweaked caching utility.
Added Library base class, for shared methods between AudioLibrary and VideoLibrary, with magic GetThings and Get/SetThingDetails methods.