Refactor toImportStatements.
Create interactive UI.
Don't query for the same identifier multiple times.
Don't repeat questions for same qualifications.
Nicer output.
Include second part of test case.
Don't ask user when there's only one option.
Merge explicit imports of same module.
Show list of unbound names with no suggestions.
Don't prompt when single original name and already chosen.

For example, if we need to lookup (<$>), which comes from Data.Functor
and is re-exported by Control.Applicative, and an earlier choice
already added an import for Control.Applicative, we just add (<$>) to
that.
Split ChosenImports into separate module.
Moved Import type to separate module.
Fixed up dependencies.
Expand cabal file.

Adds more authors, synopsis and description, homepage and source
repository, and a CHANGELOG.