clear up model into "types" and "vendors"; fix exported interface