Classification permissions

Adds permission controls for classifications. 
I think the ClassificationVisibilityQuery  directory and class should reside in lib/