If `functionKind` is a boolean, then `isFunctionKind` would make more sense, but I'm unsure because I see `functionKind.value` and `.type`.  Maybe we could have a `FunctionKind` with `.isAsync()`, `isGenerator()` etc. This way I could read about `FunctionKind` and understand it in on place rather than searching around and integrating.