Some more improvements to the face validation code. Still needs to be properly tested and speed checked.