Self-Assembly and Self-Repairing Topologies