[DDMD] Use utf8_t* to represent unicode strings in dmd

Instead of using `-J`, use `utf8_t` (aliased to `unsigned char`) to represent unicode strings in the compiler.  This allows the conversion tool to automatically replace `utf8_t` with D's `char`.

@WalterBright

See also #2215 for discussion