full support for node url object