Part::FaceMaker::ConstructFromType() could return null pointer if abstract class type is supplied. Here, it is fixed by checking for null pointer in facemaker itself, rather than in every place ConstructFromType is being used.
For old documents, default to FaceMakerCheese. For newly created objects, use FaceMakerBullseye