Edit async fetch method, replace semaphore implementation for retreiveObject