URL Parser

Parse a URL string to extract protocol, host, port, credentials, path and query parameters.