Merge pull request #22 from bgamari/master

Add Metric instances for IntMap, Map, and HashMap
Relaxed semigroupoids upper bound.
Bumped version.
only use {GHC.Generics, DeriveGeneric, DefaultSignatures} for GHC 7.2.1 and greater

Note: Since many instances of Additive were using this mechanism for ^+^ and ^-^, these have been written by hand. These methods were written inside #ifndef USE_GHC_GENERICS so as to use Generic deriving when available. It's unclear to me if this is preferable.
derive Generic, Generic1 on everything (except Generic1 V which is done in a different commit)
derive (Generic1 V) for GHC >= 7.7

This Generic deriving is handled separately from the others because of GHC bug: https://ghc.haskell.org/trac/ghc/ticket/8468 which is fixed in GHC 7.7. I have not tested this patch because I don't have a GHC 7.7
Generic1 can only be derived on GHC 7.6.1 and greater
Merge pull request #24 from ghorn/master

derive Generic,Generic1 on almost everything (for appropriate GHC versions)
1 resp. 2 traversal implementation of basis(For) and kronecker
Simpler. Better names.
Strict field
Updated comment
Need traverse
Merge pull request #25 from sjoerdvisscher/patch-1

1 resp. 2 traversal implementation of basis(For) and kronecker
1.3.1 CHANGELOG
Fixed warnings and errors in Linear.Vector
minor-minor version bump
Implement underivable instances for Point

`Bind`, `Core`, and `R[1234]` can no longer be derived after the
addition of roles with GHC 7.8 (see [1], unfortunately spread across
three months of archives). Write these instances manually.

[1] http://www.haskell.org/pipermail/ghc-devs/2013-October/003003.html