SharefPref StringSet implementation

This is implementing #264. The code is based on #543, but i changed the serialization to XML, as the conversion has come to this.
Why not using the same trick than android-support libraries ? It may be something like this :

```java
public static Set<String> getStringSet(SharedPreferences preferences, String key, Set<String> defValues) {
    if (Build.VERSION.SDK_INT >= 11) {
        return getStringSetNative(preferences, key, defValues);
    else {
        String serializedSet = preferences.getString(key, null);
        return SetXmlSerializer.deserialize(serializedSet);
    }
}

@TargetApi(11)
public static Set<String> getStringSetNative(SharedPreferences preferences, String key, Set<String> defValues) {
    return preferences.getStringSet(key, defValues);
}
```