Add method to access cached objects asynchronously

This moves any potential disk access off the calling queue