Merge pull request #1014 from skyfex/devel

Packed pragma and tests for packed and union pragma
reference implementation of a vector swizzle library

This also provides the initial steps towards support for type class "filtered" type inference
fixes an "ordinal type expected" ICE, related to the use of static params
fix #1013
implements ``distinct with/without X, Y``

This still doesn't work quite right, because some common operations like array
indexing lay completely outside the scope/symbol lookup system - they are not
even magics.
fix #1018

Previously, generic types originating from the same body symbol were compared
structurally. The bug illustrates a case, where such a comparison is not correct.
The new approach follows the established method used in typeRel.
fix the handling of "msg" tests
fix #1016
fix #1015
Added documentation for packed pragma