This updates the C API for the removal of TerminatorInst. It converts
the type query to a predicate query and moves the generic methods to
work on Instruction instances that satisfy this predicate rather than
requiring a specific type. It also clarifies that the C API wrapping
BasicBlock::getTerminator just returns an Instruction. Because this
was always wrapped opaquely as a value and the functions consuming these
values will work on Instruction objects, this shouldn't break any
clients.
This is a completely compatible change to the C API.