Drop unordered matrix type
Fix order issues by peppering code with type constraints
PolyKind implementation
Check GHC 7.6.3