     
     func validate() -> Errors
     func validators() -> [String: Validator]
+}
+
+extension ActiveRecord {
+    var rawType: String { return "ActiveRecord" }
+}
+
+extension ActiveRecord {
+    // TODO: Don't have any other opportunities to compare hashes
+    var hashValue: AnyType? {
+        return self.id
+    }
 }
 
 extension ActiveRecord {

            self.setAttrbiutes(newValue)
            ActiveSnapshotStorage.sharedInstance.set(self)
        }
    }
    public func setAttrbiutes(attributes: [String: Any?]) {}
    public func getAttributes() -> [String: Any?] {

    var rawType: String { return "Float" }
}

public protocol ActiveRecord: AnyType {
    var id: AnyType? {set get}
    init()
    init(attributes: [String:Any?])
