First pass at scoped face culling object.

Builds on OSX. Otherwise untested.
Addresses #506