add list monad instance