Rust does provide some help in its type system (via ownership), but it is not nearly as expressive as Obsidian's. Rust, AFAIK, does not support linearity (i.e. will not warn you when you accidentally lose an owning reference to an object). It also does not directly support typestate (although there are ways of shoehorning parts of that in, I believe).
You are talking about implementations of the nodes. This is targeting smart contracts that will be executed by those nodes.
Nope both. Holochain core is written in Rust and you code distributed apps ("DNA") in Rust. Polkadot core ("Substrate") is written in Rust and you code smart contracts in Rust ("Ink"). Both compile down to WASM.
Well color me ignorant. I am going to have to looker deeper into both (esp Polkadot), I have been procrastinating that for too long now.