Image selection

Removes _selectedImage.
While this code functions correctly, it reads poorly. There's no reason to return here if we're not using `async` (even though the caller should just ignore the return result). Let's put it inside an `if (a.async === true)` block.