Fixed -p and --overwrite; removed pipe support

Also, code cleanup: simplified file access facade