Convert `replace-vars` args into strings

Prior to this commit, trying to substitute a number via `replace-vars`
would throw an exception, because the replacement value is not a
string.  Example:

    ((replace-vars {:a 42}) "#{a}")
    ;; throws ClassCastException in clojure.string/replace-by

This commit makes it so that any substitute is converted into its
string representation via `str` before substitution.  For example, 42
is converted into "42" so it can be substituted properly.  This
fixes the issue and allows any `str`-able value to substitute in.
Fork temporarily to org.clojars.elliot42/enlive

Temporary fork while waiting for pull request