an arrow-apply is a monad
create impl package
implement ArrowApply for function