[PR] Improve definitions for Node url.parse function
[PR] Improve definitions for Node url.parse function

Summary:
TypeScript does it right https://github.com/DefinitelyTyped/DefinitelyTyped/blob/master/types/node/url.d.ts#L20-L33

In Node every return value is monomorphic by design where it's possible.
Example of `parse` output in the worst case.
```bash
➜ node -p "require('url').parse('')"
Url {
  protocol: null,
  slashes: null,
  auth: null,
  host: null,
  port: null,
  hostname: null,
  hash: null,
  search: null,
  query: null,
  pathname: null,
  path: null,
  href: ''
}
```
`parse` throws an error when is called with invalid argument types, so there is no way for it to return `undefined` inside of it's return object.
Pull Request resolved: https://github.com/facebook/flow/pull/8273

Reviewed By: panagosg7

Differential Revision: D19705524

Pulled By: mroch

fbshipit-source-id: 87cd3694fddf86c3aafb98f60eb19c04e1e5a4b0

nmote/flow,nmote/flow,nmote/flow,nmote/flow,nmote/flow,nmote/flow,nmote/flow