Hello there, it's me again

Let me start off by saying that PolyVox is really an awesome library. I was able to do about everything that came to my mind with little to no effort and almost everything was working on the first try, once I grasped the basics of the library. Really nice work!
I worked a bit more on my "project" and I got a lot stuff working, but I also got several more questions. I hope they aren't too many
1) Is Raycasting with LargeVolume fast? I still have to benchmark it, but I need to do at least 2 of them every logic step (the logic runs 30 times per second right now, so that would be about 60 raycasts per second). Maybe copying a small region around the player to a RawVolume when he moves and performing the raycasts on that would be faster? The raycasts I need to do have a really small distance (2 voxels at most) so I would just have to copy a few voxels.
2) Right now i'm managing my big world of voxels in cubic chunks (16^3), and when I have new data to render I copy the needed region with a VolumeResampler to a RawVolume in the main thread, and then I do the extraction in another thread. Is using the resampler the correct and faster way of doing it?
3) I generate the voxels in the server and I need to send them to the client via network, so I need to optimize the packet size as much as I can. I quickly wrote this snippet of code to do some really basic serialization:
http://pastebin.com/4HYeVFM2Basically I'm looping through the volume and getting the information of a chunk (pos is just the Vector3DInt32 with the position of the chunk), and if I encounter the same material I wait for a different material before writing the data to the packet.
But maybe there's an optimized serialization function in PolyVox that I missed or you can suggest a better way of doing it?
4) I'm not really experienced when it comes to shaders, but I was able to get texture atlases working without seams thanks to the post in the ogre3d forum and some shaders posted in this forum, with support for ambient light and a directional light.
I will need to add support for several small light sources and shadows in the future, but honestly I have no idea how this can be accomplished. I should probably ask this in the ogre forum, but maybe you had some experience with these things and you can point me in the right direction.
That's all for now, thanks in advance to everyone that will take the time to read this post
