Use promises for directory/file detection.
Add directory listings.