add ftInTitle plugin by @Verrus

This is a snapshot of the plugin at its git revision
abb6bb94db79e9260e2062404c986316f1dc925c.
ftintitle: syntactic/comment style cleanup

- expunge remaining CamelCase identifiers
- start adding PEP8 space around operators
- start wrapping to 79 columns
- access track fields with attribute syntax

--HG--
extra : amend_source : 9c916013230dd3cde187f2a55e89587b009bce6a
ftintitle: move helper functions to module scope

These do not need to be closures.
ftintitle: docstrings, new top-level function
ftintitle: reorganization and refactoring

- expand docstrings
- collapse some small/duplicative helper functions
- simplify control flow
ftintitle: remove duplicated field variables

Several fields were kept around in variables even though they were unused.
They can be read from the Item object at any time.
ftintitle: use beets' ui.print_ function

This avoids encoding troubles. This also uses displayable_path to deal with
Unicode pathnames.
ftintitle: store modifications to the database

A run of `beet update` is now no longer required. This is in line with the
behavior of lyrics, lastgenre, echonest_tempo, replaygain, ...
ftintitle: restrict by query

Again, for symmetry with other metadata cleanup/extension commands.
ftintitle: changelog & docs (closes #374)