Change Mesh format. Add Icosahedron, subdivision.

Changed the mesh format to LinkedLists so it's easier to play about
with vertices. Modified Tetrahedron to use this new scheme, and
added an Icosahedron class. The mesh class now subdivides faces, this
is to approximate spheres using subdivided platonic solids.