Eliminate seperate `Functor` and `Monad` for `Callable`

[none]
Fixed Callable changes

[none]
(First|Last|Min|Max)Val and Semigroups

Addresses issue #248.
Improve `Callable` tests

[none]
Merge pull request #260 from pthariensflame/topic/first-and-last

Add `FirstVal`, `LastVal`, `MinVal`, and `MaxVal` to `Tags`
fix typo
Merge pull request #262 from xuwei-k/fix-typo

fix typo
An Unapply for types shaped like [a]M[F[_], a], e.g. StreamT.
Reverted the implementation of IndexedSeq#spanM which was causing a broken groupByM in issue #266
Merge branch 'scalaz-seven' of github.com:scalaz/scalaz into scalaz-seven
Merge pull request #264 from S11001001/topic/unapply-mfa

An Unapply for types shaped like [a]M[F[_], a], e.g. StreamT