new version of the uri encoder (still !legal)