Added a second URI parser that uses an indexed loop and boost::string_ref.
Improved the second parser to recognise empty paths.