Model shapes as collections of faces. This should facilitate later work on calculating volume intersection.