A new time dependent density functional algorithm for large systems and plasmons in metal clusters