Added initWithDictionaryRepresentation and dictionaryRepresentation to make it easier to save gradients to NSUserDefaults.  Also added some argument checking when initializing GSGradient.