A problem I encountered often too is that including some libraries, like std::cout, increases your executables filesize a lot. There is probably a way to avoid this, but I'm not aware of it.
As for overwriting, couldn't you add a warning asking the user if he wants to overwrite the file?
