make it possible to specify unsafe argtype

write unsafe(cls) in the argtypes list. This has a different meaning
from just writing cls, in that it checks for a precise cls, not
subtyping. E.g. unsafe(W_List) makes no sense, as W_List is an abstract
class.