Initial attempt at implementing HiddenIDs

TopoHDShader and CaveHDShader both allow for hiding unwanted blocks, this can be useful for the Default shader as well.

Code copied pretty much directly from CaveHDShader.java, initial commit to see if it works.