You've done very well! Only a few things I see missing. You don't need plant1 to be an IBOutlet; it's easier to create it in code than in interface builder. To create the plant object, you do this:
Code:
//in (void)viewdidload from ViewController.m:
plant1 = [[StageClass alloc] init];
Also replace your @synthesize lines to just this one:
Code:
@synthesize plantState, water, fertilizer, harvest, harvestCounter, imageView;
You don't need water = _water, becuase you don't have variable named _water. The properties already match the variable names.