What does the command `adb sideload FILE` do?
Adb sideload command just loads a zip file from the computer to the phone. The creator of the zip controls what it does (the recovery just uploads it from the computer and looks at a specific file).

You can do a lot with it, but it's not a full rom, it's cannot replace a rom. 
Here is an example of an update.zip I once wrote and sideloaded it to a phone:

mount("yaffs2", "MTD", "userdata", "/data");
delete("/data/system/gesture.key");
delete("/data/system/password.key");
ui_print("Done!");


It deletes a couple of files, and prints a successful result. 

2.The command fastboot flash all can replace an entire rom, because it does a bunch of operations like format a partition and install a new rom. But you can flash other files that don't do those things (but often this command do exactly that.) 

3.You can do a lot of things in the adb command line, like delete a partition a flash or just copy something else to it. What exactly do you want to do? On which partition? 

Hope this is helpful, and check out the android developers page on adb ( http://developer.android.com/tools/help/adb.html ).