URI parsing library - RFC 3986