add merging functionality to duplicates plugin
add merging functionality to duplicates plugin

This patch depends on %aunique not being present in config.paths
for behavior as intended.

The logic surrounding moving/copying a track from a duplicated album to
the original one could probably be extracted out and put into
library.Album.

This is based on the ordering imposed by the tiebreaking facility
introduced in 6be98b0a369aa148acee8906d55076ac824b5108. Once a natural
duplicate ordering is in place, then the strategies for merging are:

Items:

Iterate through each available field:
    Iterate through each duplicate:
        If current duplicate has a field not set in the original, set it there
        Break

Albums:

Iterate through each duplicate:
    Iterate through each item in duplicate:
        If current item is not present in original, copy it there
        Continue

sadatay/beets,dfc/beets,ruippeixotog/beets,Andypsamp/CODfinalJUNIT,jcoady9/beets,arabenjamin/beets,sampsyo/beets,jmwatte/beets,m-urban/beets,sampsyo/beets,untitaker/beets,SusannaMaria/beets,Dishwishy/beets,parapente/beets,kelvinhammond/beets,LordSputnik/beets,Kraymer/beets,Freso/beets,asteven/beets,pkess/beets,lengtche/beets,imsparsh/beets,diego-plan9/beets,lightwang1/beets,marcuskrahl/beets,mosesfistos1/beetbox,Andypsamp/CODfinalJUNIT,SusannaMaria/beets,mathstuf/beets,kareemallen/beets,sadatay/beets,ibmibmibm/beets,sampsyo/beets,moodboom/beets,mried/beets,mosesfistos1/beetbox,mried/beets,kareemallen/beets,imsparsh/beets,jackwilsdon/beets,lengtche/beets,diego-plan9/beets,tima/beets,madmouser1/beets,MyTunesFreeMusic/privacy-policy,gabrielaraujof/beets,drm00/beets,randybias/beets,ruippeixotog/beets,kelvinhammond/beets,arabenjamin/beets,artemutin/beets,shanemikel/beets,jcoady9/beets,moodboom/beets,beetbox/beets,kelvinhammond/beets,ibmibmibm/beets,dfc/beets,SusannaMaria/beets,Andypsamp/CODjunit,mried/beets,ruippeixotog/beets,dfc/beets,untitaker/beets,SusannaMaria/beets,shanemikel/beets,Andypsamp/CODjunit,MyTunesFreeMusic/privacy-policy,asteven/beets,pkess/beets,lengtche/beets,arabenjamin/beets,Freso/beets,swt30/beets,LordSputnik/beets,pkess/beets,xsteadfastx/beets,kareemallen/beets,Freso/beets,tima/beets,tima/beets,parapente/beets,jmwatte/beets,mosesfistos1/beetbox,YetAnotherNerd/beets,ibmibmibm/beets,xsteadfastx/beets,madmouser1/beets,gabrielaraujof/beets,shanemikel/beets,jcoady9/beets,shamangeorge/beets,randybias/beets,xsteadfastx/beets,MyTunesFreeMusic/privacy-policy,jcoady9/beets,Dishwishy/beets,shamangeorge/beets,swt30/beets,artemutin/beets,LordSputnik/beets,shamangeorge/beets,asteven/beets,lightwang1/beets,lightwang1/beets,m-urban/beets,marcuskrahl/beets,shamangeorge/beets,Kraymer/beets,imsparsh/beets,dfc/beets,madmouser1/beets,marcuskrahl/beets,sadatay/beets,gabrielaraujof/beets,Freso/beets,lightwang1/beets,randybias/beets,MyTunesFreeMusic/privacy-policy,mried/beets,Kraymer/beets,kareemallen/beets,sampsyo/beets,moodboom/beets,LordSputnik/beets,Dishwishy/beets,swt30/beets,Dishwishy/beets,PierreRust/beets,YetAnotherNerd/beets,artemutin/beets,mathstuf/beets,kelvinhammond/beets,drm00/beets,jackwilsdon/beets,pkess/beets,Andypsamp/CODjunit,mathstuf/beets,jackwilsdon/beets,marcuskrahl/beets,tima/beets,jackwilsdon/beets,madmouser1/beets,ibmibmibm/beets,parapente/beets,drm00/beets,moodboom/beets,PierreRust/beets,Andypsamp/CODjunit,untitaker/beets,mathstuf/beets,diego-plan9/beets,drm00/beets,mosesfistos1/beetbox,untitaker/beets,Andypsamp/CODfinalJUNIT,xsteadfastx/beets,lengtche/beets,Kraymer/beets,Andypsamp/CODfinalJUNIT,asteven/beets,YetAnotherNerd/beets,diego-plan9/beets,sadatay/beets,ruippeixotog/beets,Andypsamp/CODfinalJUNIT,PierreRust/beets,beetbox/beets,jmwatte/beets,artemutin/beets,YetAnotherNerd/beets,m-urban/beets,randybias/beets,imsparsh/beets,swt30/beets,arabenjamin/beets,beetbox/beets,beetbox/beets,shanemikel/beets,gabrielaraujof/beets,m-urban/beets,Andypsamp/CODjunit,jmwatte/beets,parapente/beets,PierreRust/beets