This is a library of string manipulation functions.  It
is intented as a replacement for clojure.contrib.str-utils.

You cannot (use 'clojure.contrib.str-utils2) because it defines
functions with the same names as functions in clojure.core.
Instead, do (require '[clojure.contrib.str-utils2 :as s])
or something similar.

1. Be functional
2. String argument first, to work with ->
3. Performance linear in string length

Some ideas are borrowed from

Vars in clojure.contrib.str-utils2