In case of broken data in the datastore more than one object can be returned where only one is expected. Don't raise an exception in this case, but don't cache the broken data.
Make sure cache and reverse_cache attributes exist on context to avoid errors on remote shell, where no incoming request initialises these.
Raise an error when trying to save a primary key starting with double underscores.
Remove a few checks for context cache attributes where they're not necessary anymore
Merge pull request #61 from kirberich/master

Thread-local caching fix, don't raise assert error when unique query returns more than one object.