Add applicative instance

This is just the lazy definition for it, but when the addition of superclasses gets merged there will need to be an `Applicative (Free f)` instance to satisfy `Monad (Free f)`