appendMap :: (Monoid a, Argument arg) =>
              (arg -> IO a) -> OptBuilding arg a
appendMap f = setter (\a acc -> f a >>= \x -> return $ acc <> x)
appendMap :: (Monoid a, Argument arg) =>
              (arg -> IO a) -> OptBuilding arg a
appendMap f = setter (\a acc -> f a >>= \x -> return $ acc <> x)
appendMap f = setter (\a acc -> f a >>= \x -> return $ acc <> x)