Every so often there is talk about rewriting clients and the state of kaillera. Although there's always still plenty to learn I've spent a lot of time with Kaillera and figured I can offer some insights.
First, when we talk about "kaillera," there's really two things going on here - the server, which is emulinker, and the client, which in this case is Ownaclient. Voobly appears to be a business and I don't think they would take on smash64 and get involved with emulators. It also would not be open sourced which is a big deal.
Agent is correct in that the server code is not worth messing with, primarily because there is no nice source for it. However, I wouldn't say it is poorly written. The kaillera protocol was designed in the age of dial-up connections, and works well, all things considered, but is lacking some features that are common today. Kaillera isn't "bad," its just that technology and tools have advanced enough that current things are making kaillera seem worse and worse over time. Shears, I'm not sure what your background is, but I'd be happy to delve into the code and talk about some more technical aspects of things if you'd like.
Here's a list of things that can be reasonably expected if everything was to be rewritten with what's available today:
-Desync detection and ability to roll back to a save state
-Better lobby and username system
-Less lag outs, and system rejoining (if a user disconnects, they would be able to rejoin and load a save state so they could resume play)
-Easier 4-player p2p with NAT traversal (p2p without forwarding ports)
-Less server downtime
-Much better user experience and GUI using mupen64plus
Here's a list of things that most reasonably will NOT be improved by rewriting kaillera:
-Less desyncs (Mupen is probably better at this than pj64 so this may improve, but it is an emulator issue and not a netplay issue)
-Less input delay (p2p kaillera is as best as it can get)
-Better/more consistent ping times
Here's a list of things that can probably be done but may be outside the scope of the project:
-Cross platform play (Windows, Linux, OSX, Android, Wii, etc)
-Stat tracking
I've been involved with a couple projects to rewrite Kaillera but they all have died for one reason or another, which is common.
I have some time and I'd be willing to lead a development team to do what needs to be done to implement a new kaillera protocol. My area of interest in programming is networking and distributed systems so I think it would work well. If we wanted to do this, it would need to be composed of at least 2 other developers who are very committed to getting this done within a reasonable time. This would mean weekly scheduled skype calls, code reviews upon checkins, etc. We'd probably have something presentable come summertime if everyone involved put in atleast a few hours every week. I'd work mainly on the backend server code, and would want some people with experience/willingness to learn in the areas I know least about:
-Native Windows C++ and networking (interfacing with mupen)
-GUI frameworks (platform-independent if possible, e.g. Qt)
-Low-level memory/MIPS knowledge, to retrieve stats and synchronization variables
That being said the more people involved, the better. This would be a good way to get some experience developing stuff if that's what you are looking for.