Fix #16: Handle already existing file

Cleanly exit if the output file already exists.
Add --overwrite/-y option to overwrite the existing file.

Thanks to Lee Hanxue <hanxue.developer@gmail.com> for
having reported the issue and provided a patch.