title: Do @NSManaged variables have to be optional?
body: <p>In Xcode 7 automatically generated core data classes have the core data variables in an extension in a separate file. They also make <em>every</em> variable optional. I understand some of the reasoning for this, core data objects don't have a swift init function. How does one know a variable is never nil?</p>
  
  <p>However, I have several variables assigned within <code>override func awakeFromInsert()</code>. As soon as they are created/inserted they have a non-optional value. These variables are also set to be not optional in the core data model. Is there any reason that I shouldn't change such variables to non optional in the extension?</p>
  
  <p>Also, if <code>@NSManaged var bioRatio: NSNumber?</code> has an attribute value of Integer 32 in the core data model, is there any reason I can't declare it as <code>@NSManaged var bioRatio: Int</code> in the extension?</p>
  
  <pre><code>extension ShoppingItems {
  
      @NSManaged var bioRatio: NSNumber?
      @NSManaged var dateCreated: NSDate?
      @NSManaged var dateModified: NSDate?
      @NSManaged var dateSynced: NSDate?
      @NSManaged var coreDiesel: NSNumber?
      @NSManaged var coreHaveStock: NSNumber?
      @NSManaged var coreMonthlyStock: NSNumber?
      @NSManaged var myName: String?
      @NSManaged var recordChangeTag: String?
      @NSManaged var stdQty: NSNumber?
      @NSManaged var urgency: NSNumber?
      @NSManaged var uuidAccount: String?
      @NSManaged var uuidFamily: String?
      @NSManaged var uuidKey: String?
      @NSManaged var uuidUnit: String?
      @NSManaged var uuidUser: String?
      @NSManaged var myAccount: Accounts?
      @NSManaged var coreMyCategoryLinks: NSSet?
      @NSManaged var coreMyPackageHistories: NSSet?
      @NSManaged var coreMyPackages: NSSet?
      @NSManaged var myUnit: Units?
  
  }
  </code></pre>