Super Typhoon Haima has slammed into the northeastern Philippines, tearing roofs off houses and leaving many villages without power.