SOE ex.5.8
transform :: Enum a => (Int -> Int) -> [a] -> [a]
transform f = map toEnum . map f . map fromEnum
encrypt, decrypt :: String -> String
encrypt = transform (\c -> if c >= 255 then 0 else c+1)
decrypt = transform (\c -> if c <= 0 then 255 else c-1)