A patch that allow '@' appear in path or query-string

$.url('http://domain.com/xxx@yyy'); => protocol=http, host=domain.com, directory=xxx@yyy
$.url('/a@b', false);               => user=/a, host=b
$.url('/a@b', true);                => directory=/a@b