More hard tab replacement
Amendments to URI Parser based on feedback

Fixed soft tabs, used RegexMatch instead of <regex>, added tags to
tests, added uri parser tests, simplified uri parser, added parse fail
reason to URIResult, made warning enum for URI more general