Use Data.Functor.Identity

This has just entered base, and includes some optimizations that may or
may not be relevant. For older versions, don't bother making Identity a
Monad instance--it's not exported, and that instance is never used.
Make applicativeTree slightly more readable.
Merge pull request #76 from treeowl/identity

Use Data.Functor.Identity