Implement an Elixir program that uses GenServer to implement a distributed counter with failover. Your program should be able to handle crashes of individual nodes and continue counting without data loss. Please provide clear documentation on how to run and use the program. Style and code formatting should follow best practices and standards in the Elixir community.
This prompt doesn't seem malicious.