Address review feedback:
- externalize UI strings
- move file utility methods to FileUtil.