support for parametric user-defined type classes
implements #766;

expressions such as Type.field are now recognised by the compiler.
This also fixes a bug, preventing the user-defined to check for the presence of
regular fields in addition to procs
the `is` operator now uses exactly the same algorithm as proc signature matching
Merge branch 'devel' of https://www.github.com/Araq/Nimrod into devel