use fs-extra, add copy and logging