made image loading asynchronous