Previously, it was impossible to generate a list of completions for an `input.get()` request asynchronously, as the values had to be returned by the callback function. This commit provides a way to send completions asynchronously by passing a second argument to the complete callback; a function which can be passed the return values to respond to the complete event.