Added Cache On to enable/disable the cache.

 - Constructor modified, added defaults options when $config is array to prevent " notice undefiend index"
On retrieve check if cache key exists and time expiration