better error messaging
added enum
pattern support
uniqueItems is supported