Changes proposed to DB.Get and DB.Exists

Here is what I changed:

1. 'DB.Get'

DB.Get changed to add the obtained value from 'disk' into the 'Cache', making subsequent 'Get' calls for the same key more faster (or without IO).

2. 'DB.Exist'

DB.Exist was changed to first check the 'Cache' to avoid make unnecessary IO and avoid buggy behavior on the following call sequence:  Insert<T>("key1", ...); Exists("key1", ..);