Make `URI.encode/1` to conform to RFC 3986. Introduce `URI.encode/2` function.

- According to RFC 3986 the space character should be escaped as `%20`, not `+` (it is behaviour of  very early version of the URI percent-encoding rules).
- `URI.encode/2`