Ten people, including the shooter, have died in an "unimaginable tragedy" that has rocked a small town in Canada.