anchor.diff:  
     bool get isDirty => _dirty;
   
  -  Future getValue(String key, [String defaultVal]) {
  -    final String val = _map[key];
  +  Future getValue(String key, [dynamic defaultVal]) {
  +    final val = _map[key];
       return new Future.value(val != null ? val : defaultVal);
     }
   
  -  Future setValue(String key, String value) {
  +  Future setValue(String key, dynamic value) {
       _dirty = true;
       _map[key] = value;
       _controller.add(new PreferenceEvent(this, key, value));
  
positive.code: class PreferenceEvent {
    final PreferenceStore store;
    final String key;
    final String value;
  
    PreferenceEvent(this.store, this.key, this.value);
  }
  
negative.code:   /**
     * Get the value for the given key. The value is returned as a [Future].
     */
    Future<dynamic> getValue(String key, [dynamic defaultVal]);
  
    /**
     * Set the value for the given key. The returned [Future] has the same value
  