Attempt to clarify the definition of "indirect call" in LLVM, and add a function to look through trivial casts in a call instruction.
Rename and invert semantics of "isIndirectCall" to "isConstant". I don't like the new name, but I'm not sure how else to distinguish it from "direct/indirect".
Maybe it would be better to avoid "direct" and "indirect"...? Maybe just say "Return the function being called if the callee Value is a Function".