typechecker: typing new static() [1/2]

Summary: Adds a boolean to constructor type to track compatibility and
 cleans up surrounding code. This boolean is not yet being used in
 anger to enforce "descendants of this class must have compatible
 __construct declarations", but that's the purpose.

Reviewed By: @jwatzman

Differential Revision: D1466609
More flaky failures

Summary: disable flaky tests

Reviewed By: @ptarjan

Differential Revision: D1469323