Music Importer
**************

The importer component is responsible for the user-centric workflow
that adds music to a library. This is one of the first aspects that a
user experiences when using beets: it finds music in the filesystem,
groups it into albums, finds corresponding metadata in MusicBrainz,
asks the user for intervention, applies changes, and moves/copies
files. A description of its user interface is given in Using the Auto-
Tagger.

The workflow is implemented in the "beets.importer" module and is
distinct from the core logic for matching MusicBrainz metadata (in the
"beets.autotag" module). The workflow is also decoupled from the
command-line interface with the hope that, eventually, other
(graphical) interfaces can be bolted onto the same importer
implementation.

The importer is multithreaded and follows the pipeline pattern. Each
pipeline stage is a Python coroutine. The "beets.util.pipeline" module
houses a generic, reusable implementation of a multithreaded pipeline.
