refold
https://ja.wikibooks.org/wiki/Haskell/不動点と再帰#データ型としての_Fix
code:hs
refold :: (a -> f a) -> (g a-> a) -> Mu g -> Nu f
refold f g = unfold f . fold g