Improve keyword and anonymous input for replace function (fixes #2308).

See #2308. For a consistency the same fix is applied to the `%` function (I actually made it by less verbose `Quoted` constructor change instead of modifying functions themselves).
Fixes code like:
```
#quoted-functions-in-mixin {
  .mixin();
  .mixin() {
    replace-keyword: replace(baz-1, "1", "2");
    replace-anonymous: replace(e("qux-1"), "1", "2");
    format-keyword: %(hello);
    format-anonymous: %(e("hello %s"), "anonymous world");
  }
}
```