added ISeqable and IPrintWithWriter - events now act like maps
removed IAssociative since not useful and doesn't follow contract for assoc