The Design of Optimal Insurance Contracts: A Topological Approach