recursively download platforms. move download code to util