Shapes are dictionaries keyed by face names
Junctions now done using sparse matrices; issue discovered that upper and lower part of root airfoil can't be separated in CP_array so junctions will have to be divided into two faces
Junctions given row of empty surfs to resolve root airfoil upper/lower split issue
PGM initialization overhaul - initial topology creation uses same cp_array computation as parametrization, simplifying everything especially interpolants; junctions and cones now fully working with sparse matrices