One of the criteria used to decide if something is a dialect or a language is mutual intelligibilty: if two native speakers use two different dialects of their language, they understand each other. If the level of understanding Kashubian by an average Pole is enough to say that Kashubian is intelligible to him/her, then Slovakian is a dialect of Polish, too...
So is Lithuanian a dialect of Sanskrit, or the other way around?
I think this criterion is easily discredited as subjective. I can easilly communicate with Polish Gorale when I am among a dozen of them. Most Poles wouldn't have a clue what is being discussed. Now, Gorale speaking to Poles is a quite different matter. Their language changes a lot then.
In general, the distinction between language and dialects is not, in many cases, science but a view.
Another definition of the distinction between language and dialect is that a language has its own army.
That is a plausible approach :)