typechecker: class_meth can use self::class and static::class

Summary: Referring to self::class and static::class is unambiguous in the
 context of `class_meth`. `self::class` is equivalent to the behavior
 with `__CLASS__`, whereas `static::class` is new functionality that
 allows `class_meth` to support dispatch to late-bound static methods.

Reviewed By: @jwatzman

Differential Revision: D1500010
typechecker: detect abstract parent:: calls

Summary: `parent::foo()` invokes a specific method and not a
 late-bound one; it's thus non-sensical for that method to be
 `abstract`.

Reviewed By: @jwatzman

Differential Revision: D1500136