Abstracted asynctasks to logical file locations

Holy God, there's like 1000 lines of those alone.