Add locking for thread-safety.
Remove useless cache.
Cache the filter_field() on Resource.
Lock on access to Resource.auth.
Remove 'caching' setting for Resources.

This is to remove ambiguity in how Resources should be used (There
should be one-- and preferably only one --obvious way to do it).
Make use of cached resources in QuerySet slicing.