Relax the Shell interface, Escape() is only used internally.

Some shells might have different escaping between the key and the value.
Preliminary support for vim