update for linear

Accompanies https://github.com/diagrams/diagrams-lib/pull/212

This is nearly done; it remains to decide what to do about `force-layout`, and the minor name collision of `size`.  I think the choices with `force-layout` are port it to linear (it has [no revdeps but `diagrams-contrib`](http://packdeps.haskellers.com/reverse/force-layout)) or create `vector-space` class instances for `V2` and other types, in `diagrams-contrib`.
How does `Grid` use this?  I don't see it.  The `Ord` instance for `Q236` was just intended for using them as keys in maps etc.  I'd really rather not use `toDouble a <= toDouble b` since the whole point of using the `Q236` representation is to avoid having to do floating-point comparisons.