Correctly handle `\c` to suppress newline

This commit fixes an inconsistency compared to GNU coreutils echo
as well as most builtin and BSD echo flavors.

The `\c` sequence should terminate output immediately, without a
trailing newline. It previously terminated output immediately,
including a newline unless the `-n` option was passed.