added a global cache directory, not fully properly implemented, and dose not respect t.ex the FreeDesktop specifications for cache directories and files OPS this is a partial commit! things might not add up on this commit.