Isn't there a way of piping the ok results through? e.g.
data
|> call_service
|> an_ok_unwrapper(decode)
|> an_ok_unwrapper(store_in_db)
Or is `with` the way of doing this for ok/error results?