Stop depending on AssetsLibrary and make the whole process asynchronous