classes rearranged, asynctask seperate