added localStorage wrapper