added struct for URI representation

Advanced helper structure to URI representation, easy to parse/modify/construct URI strings.
uri.userinfo: match better with the RFC (http://tools.ietf.org/html/rfc3986#section-3.2.1), and less confusing (auth/authority).