Add new `isa_and_nonnull<>` operator that works just like
the `isa<>` operator, except that it allows for a null pointer as an
argument (which it then returns false).
The final name has not yet been determined, but a discussion can be
seen here: http://lists.llvm.org/pipermail/llvm-dev/2019-April/131555.html
The name seems backwards. What does it mean to check "isa" on null? That question would not arise if the name was nonnull_and_isa.