Only expand type/1 macro when requested

Other code may have its own definition of type/1.  For example,
library(type_check) uses the same syntax for type inference.  We only
want library(typedef) to expand type/1 as a macro if the module has
explicitly imported library(typedef).

Once library(type_check) adopts a similar patch, the two modules can
coexist peacefully.