initial work on recursive download