Added groupBy1 and renamed groupByM to groupWhenM
Re-added groupByM with deprecation message
Added ability to "filter" validations based on the result of a partial function
tuned
Merge pull request #360
Added fold(Right/Left)1Opt and fold(r/l)1Opt
tuned: shorter implementation of `foldMap1Opt`, better tests
Merge pull request #362
Merge pull request #361 from oxbowlakes/groupBy1

Added groupBy1 and renamed groupByM to groupWhenM
Initial Free Applicative implementation.
Some more implementation from https://github.com/ekmett/free/blob/master/src/Control/Applicative/Free.hs
Variance
Instances and functions.