 public class Property : GraphElement, Coding, Equatable, NSCoding {
     
     //MARK: Data
-    public var type: PropertyType = .kUndefined;
+    public var type: PropertyType = .tUndefined;
 
     var numberData : NSNumber? = nil
     var stringData : String? = nil
+    var dateData : NSDate? = nil
     //var stringHash : Int? = nil
     //var stringStoreUID : UID? = nil
     

        
        if (!isNil) {
            switch (type) {
            case .kStringType:
                encoder.encodeObject(stringData!,forKey:"0")
            case .kBoolType, .kIntType, .kDoubleType:
                //encoder.encodeBool(numberData!.boolValue, forKey:"0")
                encoder.encodeObject(numberData!, forKey:"0")
            //case .kIntType:
                //encoder.encodeInteger(numberData!.longValue, forKey:"0")
            //    encoder.encodeObject(numberData!, forKey:"0")
            //case .kDoubleType:
            //    encoder.encodeDouble(numberData!.doubleValue, forKey:"0")
            default:
                print("WARNING: Encoding Property and not handled default case")
            }

        set {
            if intValue != newValue {
                dirty = true
                type = .tInt
                
                if (newValue != nil) {
                    numberData = NSNumber(long:newValue!)
