Thousands rally to defend public education