updateCategory :: Category -> ScoreCard -> ScoreCard
updateCategory new card = takeWhile wrong card ++ [new] ++ tail (dropWhile wrong card)
    where cid = sel1 new
          wrong cat = (/=) cid $ sel1 cat
updateCategory :: Category -> ScoreCard -> ScoreCard
updateCategory new card = takeWhile wrong card ++ [new] ++ tail (dropWhile wrong card)
    where cid = sel1 new
          wrong cat = (/=) cid $ sel1 cat
updateCategory new card = takeWhile wrong card ++ [new] ++ tail (dropWhile wrong card)
    where cid = sel1 new
          wrong cat = (/=) cid $ sel1 cat