title: Error when using setObject in NSMutableDictionary
body: <p>I am getting the exception: </p>
  
  <blockquote>
    <p>-[__NSCFDictionary setObject:forKey:]: mutating method sent to immutable object'</p>
  </blockquote>
  
  <p>The offending line is:</p>
  
  <pre><code>[delegate.sharedData.dictFaves setObject:@"test" forKey:@"4"];
  </code></pre>
  
  <p>Delegate is initialized thus in MyViewController.m:</p>
  
  <pre><code>delegate = (AppDelegate *)[[UIApplication sharedApplication] delegate];
  </code></pre>
  
  <p>This is how my delegate is defined in AppDelegate.h:</p>
  
  <pre><code>#import "CommonData.h"
  ...
  @interface AppDelegate : UIResponder &lt;UIApplicationDelegate&gt;
  {
      NSString *tempFave;
      CommonData *sharedData;
  }
  @property (strong, nonatomic) NSString *tempFave;
  @property (strong, nonatomic) CommonData *sharedData;
  </code></pre>
  
  <p>sharedData is initialized in AppDelegate.m thus:</p>
  
  <pre><code>#import "AppDelegate.h"
  ...
  @implementation AppDelegate
  @synthesize sharedData;
  - (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions
  {
      sharedData = [[CommonData alloc] init];
      return YES;
  }
  </code></pre>
  
  <p>sharedData is defined in CommonData.h:</p>
  
  <pre><code>@interface CommonData : NSObject
  {
      NSMutableDictionary *dictAffirms;
      NSMutableDictionary *dictFaves;
  }
  @property (nonatomic, copy) NSMutableDictionary *dictAffirms;
  @property (nonatomic, copy) NSMutableDictionary *dictFaves;
  </code></pre>
  
  <p>shared data implementation file CommonData.m:</p>
  
  <pre><code>#import "CommonData.h"
  ...
  @implementation CommonData
  
  @synthesize dictAffirms;
  @synthesize dictFaves;
  
  @end
  </code></pre>
  
  <p>I have declared the members of CommonData to be Mutable. Apparently that is insufficient. What else must I do in order to write to the Dictionaries inside CommonData?</p>