Do not use bashisms in PS1 for unknown shells

Rather use Bourne/POSIX semantics, this fixes the prompt for shells not
explicitly handled such as mksh.
Add support for mksh