Cleanup [CustomConstructor] usage

Cleanup, no changes to generated code.

The main point of this CL is that it removes use of
[Constructor, CustomConstructor] in XMLHttpRequest.idl.
The [Constructor] is a nop (if you have [CustomConstructor], we don't
generate constructors), so this CL removes it.
(Noticed this when porting [CustomConstructor].)

Also minor lint fixes.

Review URL: https://codereview.chromium.org/111683006

git-svn-id: svn://svn.chromium.org/blink/trunk@163949 bbb929c8-8fbe-4397-9dbb-9b2b20218538
IDL compiler: [NamedConstructor] (basic)

Initial CL; will follow up with arguments, extended attributes, etc.

Perl parser handling of named constructors is hacky (included in
constructors, but treated differently by code generator), so added
FIXMEs to clean this up post-Perl.

Also:
* minor whitespace cleanup in Perl,
* remove unnecessary V8Document.h header, and
* minor refactoring of Python.

Docs:
https://sites.google.com/a/chromium.org/dev/blink/webidl/blink-idl-extended-attributes#TOC-NamedConstructor-i-

BUG=239771

Review URL: https://codereview.chromium.org/116153002

git-svn-id: svn://svn.chromium.org/blink/trunk@163950 bbb929c8-8fbe-4397-9dbb-9b2b20218538