1) I haven’t tested anything other than 16×16, and at least one function is hard coded for that (getIndex). Actually, now that I think about it awhile back I did make a 32×32 version and I don’t think I changed more than getIndex… anyway, yes, it will require some small code changes.
2) As you know, V2 uses APA102 LEDs. These are not compatible with NeoPixels (WS2812). You can use the V2 source code but you’ll need to change the way the LEDs are initialized. It’s a simple change that others have done. However, this will mean the IR Remote control is not going to work and you’ll need to use physical buttons.
As for the Wi-Fi Adapter, I haven’t tried it with WS2812 but I imagine it would work with the same code change. The problem is the Photon development environment isn’t as straight forward as the Teensy/Arduino one. I’d stick with Teensy if I were you.