Not sure yet what the advantage of returning a `TaskAdaptable` is, over returning a `Task`. Presume I'll find out by continuing to read through the code...