+def _cache_load(filename, loader):
+ '''Load an object either from disk or from the cache.
+
+ We rely on kivy's caching infrastructure'''
+ path = filepath(filename)
+ obj = Cache.get('bane', path)
+ if obj is None:
+ obj = loader.load(path)
+ Cache.append('bane', path, obj)
+ return obj
+
+