Image selection

Removes _selectedImage.
This comment should explain exactly what requires the real `setTimeout` and why it requires it so that future us can understand this. It would be ideal to make the configurable when running a specific test, but at least if we have a good comment here, we can cross that bridge when fake timers are useful.