Ensure `toString(...)` only does type conversion

As opposed to `str(...)`, it should not return the literal form of a
string argument. i.e. `str("foo")` should return `"foo"`, but
`toString("foo")` should not change the input and return only `foo`.
Merge pull request #2674 from cleishm/cypher-to-string

Ensure `toString(...)` only does type conversion