Looks like you got the bases covered pretty solidly.
Can the start buttons double as left and right mouse click, or is there a reason to have separate buttons for that?
Not a problem for MAME - as Javery mentioned, the action buttons might be better for proximity. If you plan to run other emulators on the cab, or PC games, there could be a problem as some of these can't be configured to use mouse clicks.
Can the coin slots be configured so that when you push them in, MAME detects it as a coin inserted?
Yes.
http://1uparcade.robandmitsue.com/projects-coinbuttons.htmlAlso, what is a good joystick for both 4-way and 8-way games?
There isn't one.

Is there one that can be configured to either 4-way or 8-way for individual games?
I use the
www.groovygamegear.com Prodigy - short throw, but excellent 4-way and good 8-way stick.
They also have the 49-way (with a new version coming soon) but this needs it's own interface board.
Ultimarc has the U360 and MagStick.
I think those are all the above panel swappable options, there are others if you don't mind opening the panel to change the mode.
I've been reading about the various methods of connecting the various controls to the PC. Based on the control panel requirements I've just listed, can someone suggest the best way to connect them all to the PC?
Funny you should ask -
http://www.mameworld.net/tigerheli/encoder/index.htmFor the buttons, either the KeyWiz, GP-Wiz, I-PAC or Mini-PAC.
For the spinner - the TT2 from GGG which has it's own interface and can connect the trackball as well.
Otherwise, the opti-pac, opti-wiz, or mini-pac, or many trackballs have their own built-in interfaces.
Also, what software do you think I should use? I'd like some sort of front-end that would allow me to run certain roms with certain versions of MAME since some of my roms only work with certain MAME versions. I'd also like a nice, easily navigable user interface of course.
Most any decent frontend will do that. I use EmuLoader, but for a desktop CP, it's not arcade optimised and it's windowsy. MameWah is popular. Easy to set up graphically, but can be tough to configure. MaLa or Atomic FE are also very popular and easier to setup.