[Fixit-Dec-2012] Also add dual_mode to Start Menu shortcuts in MigrateChromiumShortcuts.

Restructured this code quite a bit to use the new shortcut magic.

Added tests which turned out to expose edge cases that I think weren't covered by the previous implementation (i.e. would potentially update shortcuts when unecessary -- flashing the desktop in the process -- or not do it when necessary).

NOTRY=TRUE
(Actually dis use CQ at first, but iOS is messes up at LKGR looks like...)
BUG=142980
TEST=Pin Desktop shortcut to Start Screen or pin chrome.exe directly to the start screen via context menu.
Notice that there are now multiple shortcuts of Chrome (non-tiled; 1 for each "Pin to Start" action; upon launching Chrome those should all be merged down to one Chrome tile shortcut (not on the file system, but visually on the Start Screen itself).
Note: if you do try this; there is an intentional 15s delay before the migration kicks in to avoid delaying Chrome startup; so be patient, it will work ;)!

Committed: https://src.chromium.org/viewvc/chrome?view=rev&revision=175230

Review URL: https://chromiumcodereview.appspot.com/11712003

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@175302 0039d316-1c4b-4281-b951-d872f2087c98
6 files changed