behaviors are now applicative functors