Windows-compliant system calls

Windows has no system `touch` command, and `'` is not a quoting
character in the CMD. Use `Path::Tiny::touch` to replace the system
`touch`, and change single quotes to double quotes in system call
strings.
Fix terminal encoding issues

Encode/decode the non-ascii author name so that it is compatible with
whatever encoding the terminal is using. Use `Terminal::Encoding` to
detect this.
Escape quotes in author test

In basic.t, the `James "宮川達彦" Sa...` author does not work because Git
removes the quotes. Escape the quotes so that Git does not remove them,
and store separate escaped and non-escaped strings for comparison later.