contains test now handles an alias being extended.
fixed get subtypes to deal with aliases being extended.