added struct for URI representation

Advanced helper structure to URI representation, easy to parse/modify/construct URI strings.
Why does this need to be an array of pointers?