Blockchain Finality and Double-Spend Prevention: A Practical Guide