Before this line, I tried to add the following, to migrate the old settings to the synced-settings:

    // Migration from localStorage to chrome.storage.sync
    var settingsSynced = store.get( 'settings_synced' );
    if( !settingsSynced ) {
        console.log("Need to migrate settings to synced-setings.")
        // Didn't yet migrate old settings to synced-settings
    	var oldStore = new Store( 'settings', defaultSettings, undefined, function(){
    	    oldStore.toObject(function(o){
                for (var key in o) {
                    var value = localStorage.getItem("store.settings." + key);
                    if (value !== null) {
                        value = JSON.parse(value);
                	    console.log("Migrating " + key + " = " + value);
                        store.set( key, value );
                    }
        		}
        		store.set( 'settings_synced', true );
    	    });
    	});
    }

Sadly, it didn't seem to work completely (or I broke something during my tests...)
My Newznab providers setting didn't get migrated; I was back to the default.

If I do a `store.get( 'provider_newznab' )` (in the background page) just after the migration, it returns the correct value (my old setting), but as soon as I open the Options page, the same command returns the default value of that setting. Not sure how this happens.