Handle directories recursively (close gh-2).