public static void calculateTangents(Build build, String group) {
		Map<FaceVertex, List<Face>> vertexFaceMap = new HashMap<FaceVertex, List<Face>>();
		List<Face> faces = build.groups.get(group);
		// TODO have the builder make lists of faces belonging to each vertex because this is silly
		for (Face f: faces) {
			f.calculateTriangleNormal();
			f.calculateTriangleTangent();
			for (FaceVertex fv: f.vertices) {
				List<Face> vf = vertexFaceMap.get(fv);
				if (vf == null) {
					vf = new ArrayList<Face>();
					vertexFaceMap.put(fv, vf);
				}
				vf.add(f);
			}
		}
		for (FaceVertex fv: vertexFaceMap.keySet()) {
			List<Face> vf = vertexFaceMap.get(fv);
			VertexTangent vt = new VertexTangent(0, 0, 0);
			for (Face f: vf) {
				vt.add(f.faceTangent);
			}
			vt.normalize();
			fv.a = vt;
		}
	}