Okay, just used three textures. Got block and side data moved into 3d textures instead of vertices. Not trivial, but I figured it out eventually. Means my greedy meshing can be even greedier, now that I can have multiple kinds of blocks and sides sharing a vertex.