In a very large, deep skillet, melt the butter. Add the cauliflower and cook over moderately high heat until browned in spots, about 5 minutes. Add the onions, season with salt and pepper and cook until softened, about 2 minutes. Stir in the turmeric, cumin seeds, cayenne and cinnamon stick and cook until fragrant, about 1 minute. Add the tomato puree and the water and bring to a simmer. Cover and cook over moderately low heat until the cauliflower is tender, about 15 minutes.