Merge pull request #353 from folone/scalaz-seven

Ported ST and Writer examples.
maximumOf/By and maximumOf1/By1 methods for Foldable(1), plus Foldable(1)Test
tuned
Running a free monad in another monad.
Handy for turning trampolines into futures.
tests for `MinVal` and `MaxVal` semigroups

Contributed in #356 by @oxbowlakes
Merge pull request #354
fix Index[List] and Index[IndexedSeq]
`nil`: smart constructor for `Nil` (similar to `none` for `None`)
Show[java.lang.Throwable]
Initial Free Applicative implementation.
Some more implementation from https://github.com/ekmett/free/blob/master/src/Control/Applicative/Free.hs
Variance
Instances and functions.