I think it could conflict with other uses of Zookeeper when the library versions are different.
Yeah - always a problem with dependencies like this. It's hard to say what direction we go right now though - some have argued even non zookeeper mode should be single install zookeeper mode instead. Has it's advantages and disadvantages I think. For me, I can really only take it an issue at a team, and while I hope to drive some more things around SolrCloud soon, it's obviously been a while. Others have some issues open, but more ideas are always good.
I certainly agree that CoreContainer could be modularized better - would help for testing too. I have an issue to do this for the persistence code (baby steps ), but feel free to open further issues.
I somewhat took the easy route in integrating zookeeper - there are certainly lots of improvements that could be made overall. And TODO's to finish - I think a couple guys have done a few from the wiki in various issues, and I know loggly has privately impl'd a couple from their talk at revolution (would be cool to see that come back, but I know they are busy guys). I love TODO's - minimal effort, but when you put one at a future pain point, your code doesn't look so stupid even when it's not perfect yet
We should discuss in other issues though.