At least 34 people have been killed and others injured in a gun and knife attack by a former police officer at a pre-school daycare centre in Thailand.