reimplemented schemeless url parsing