Adding instances for IdentityT
Forgot MonadSplit instance
Changed some explicit instances to derived ones