Data Structures for VLSI Layouts