Bump Scala version to 2.10.1, workaround for broken for-comprehension

See <https://gist.github.com/vmarquez/5106252/> and the mailing list thread
<https://groups.google.com/d/msg/scalaz/FqCWOmSEwUY/cchJirGmbeYJ>.

Cherry-picking commit bc2a6a4
Lens -> State integration returning the old value

- provides `LensFamily.modo` which returns the old value (as an alternative to `LensFamily.mods` which returns the new value)
- provides `LensFamily.assigno` which returns the old value (as an alternative to `LensFamily.assign` which returns the new value)

Cherry-picking pull request #324 (613068370fae6276f4bcd35ce629c9cb69eb3c6c)
Added ability to "filter" validations based on the result of a partial function

Cherry-picking cf9b415
NonEmptyList: add init and last

Cherry-picking pull request #380
Adds sort functions to NonEmptyList

Cherry-picking pull request #405