Fix Url Parser

Url parser was looking for '/' to separate hostname from path and
failed to separate hostname from query string without slash. Added
'?' as a separator.

Added test cases to url and href utils as well.