Fixed SetMatch demo

This turned out to be a complex, dual, bug:
1. Several tests on equal type in Library.mu had to be replaced by a
subtype test
2. Unforeseen consequences of mutability of HashSets in implementation
of set matching had to be fixed. All muPrimitives on mset have been
renamed (e.g., mset_add_mset => mset_destructive_add_mset) to make this
clear.

Unfortunately, set matching has become slower due to these changes and
is now 0.35 - 10 times faster then interpreted version.
Merge branch 'master' of https://github.com/cwi-swat/rascal.git