Synchronous retrieve, returns an array instead of calling callbacks on items

I needed mine to return an array, so I made these changes. If you like them, they can be yours too :)