A suicide bomber driving a minibus packed with explosives has killed at least 32 people and injured 147 in the southern Iraqi city of Hilla, police and medical sources say.