 
 (def Land
   (merge Card
-         {:type (is? :land)
+         {:type (s/eq :land)
           :size LandSizes
-          (s/optional-key :produces) (s/either Mana #{Mana})}))
+          (s/optional-key :produces) (one-or-many Mana)}))
 
 ;; haven't yet specified the speed and size of basic lands.
 ;; not sure about their usage?

(def Colours (s/enum :none :green :blue :red :white))

(def Mana
  {(s/optional-key :colour) (s/either Colours #{Colours})
   :amount s/Int})

(def Card

                   (at-most 3))})

(def SpellDeck
  {:type (s/eq :spell)
   :cards (s/both [SpellDeckCard]
                  (total-amount-at-least 40))})

