Fix type alias creation for instantiations

Modify Binder to correctly qualify type aliases for template
instantiations. This seems to mainly be a problem for type-template
instantiations, but may affect regular instantiations as well. Also
convert the set of qualified types to a QSet (which should be slightly
less expensive than an unused QString value on a QHash). Modify the
tests to exercise the newly-working resolution.

This is in some ways closely related to the previous two commits, and
the test updates are at least partly relevant to those also.

Change-Id: I45ae5ea9573d0c9ba26dd60c3b70056d13e9868c