Re: push -- I guess it was that I couldn't tell the difference between didn't-work and shouldn't-work. It didn't work for me, but I couldn't tell that if it should or shouldn't. Which I guess comes back to the error message thing. Or maybe it was something related to the versions I used -- I upgraded from 0.7 to 0.8pre at some point in my testing, and also installed bzrtools, and something eventually started working that didn't before.
The checkout thing makes sense then, and makes it more interesting. If that works fairly easily with remote repositories, then that will be a very nice bridge from traditional svn usage.