According to the OED definition of "like":
A.1.c In modern use (with following
dative) often = ‘such as’, introducing
a particular example of a class
respecting which something is
predicated.
1886 Stevenson Lett. (1899) II. 41
A critic like you is one who fights
the good fight, contending with
stupidity. 1887 Colvin Keats i. 1 A
birth like that of Keats presents to
the ordinary mind a striking instance
of nature's inscrutability.
So there is essentially no difference between "like" and "such as" when used as you described. The two have been interchangeable since the late 1800s.
The difference between heading to and heading for is subtle enough that you can use them interchangeably, yet I think there is a difference.
If you are heading to somewhere, you have a strong expectation of getting there promptly.
If you are heading for somewhere, you are going in that route, but there is some possibility of not reaching it, or making of stops along the way. An even less definite phrase is heading towards.
For example, imagine I was having a night on the town and a friend phoned to find out where I am. If I said:
"I'm at the bottom of town now, but I am heading to the top of town."
... then my friend would probably infer that he should meet me in a pub at the top of town. If I instead said:
"I'm at the bottom of town now, but I am heading for the top of town."
... then my friend is more likely to infer that he should meet me in some pub along that route.
There is an equally subtle difference between heading and headed. Once more, you can use them interchangeably, but heading is more active, and headed is more passive.
If you are the driver of a vehicle, or walking or running, you would be more likely to say heading.
If you are a passenger in a vehicle, or you're walking or running but you're following a leader rather than navigating yourself, you would be more likely to say headed.
Best Answer
The prepositional phrases, "To many people" and "For many people," are grammatically correct. The clause that follows, "dogs are the best friends" is grammatically correct. The sentences are grammatically correct.
Is the difference in meaning between “To many people” and “For many people,” dependent on the clause that follows? A different example makes it clearer. "For many people, water is wet [when experiencing water]." "To many people, water is wet [in the view of]." When this distinction is applied to the original sentences, “For many people, dogs are best friends.” means in the experience of many people. “To many people, dogs are best friends.” means in the view of many people.
It depends on whether you want to emphasize experience or view.
The original sentiment, "A dog is a man's best friend." emphasizes the superiority of a dog over a person as a best friend. Many would agree.