Letting Layer be Dynamically Specified

This pull request allows layers to be dynamically specified. Layers are specified through a comma separated query string. 

?layers=internal,external,toc,terms,sxs,paragraph,meta,graphics,interp,keyterms

This also adds a LayerCreator class that makes it a bit more streamlined to get and add layers. This should be reused a bit more, even though we don't quite do it here.