added ability to use hidden facets
brought up to coder standards
Merge remote branch 'upstream/7.x' into flvc