Moved ProgramCache and Resource modules.

Having them under a CL module name level was a bit annoying in usage. If
anything, the other modules that clients are not expected to typically
have to mention could be moved if the lack of hierarchy is unappealing.