cleanup item concat logic; ensure options.process is used for all sections; introduced `isDir` option