du implementation. It was written from scratch (doesn't use recursiveAction). I still need to flesh out du_main().