Can I add buttons to the Arduino ide that automates selection of serial port, board then compiles and uploads
The only way to do that with the Arduino IDE would be to download the source and add the buttons to the java code.

If you are using windows you have the option to use Visual Studio Pro and the Arduino Plugin. The plugin is 100% compatible with Arduino and is easy to install. The important point being that it provides every Arduino function as a macro.

This means that you can extend the user interface easily using the Visual Studio standard Visual Studio customization features. 

Basic example here



So, you can create your own macros using Arduino commands and attach the macros to your own buttons and menus. This allows you to re-program the micro-controller setting anything such as the Arduino Board, Serial Port etc. then Compile and Upload. You can even open a serial monitor on the correct port.

Considering your application a little more, you might also find it useful to know that in Visual Studio you could have all four projects open in a single solution using the same or different boards and serial ports. So your macro could simply switch the Visual Studio "Start Up Project" and call the standard Visual Studio "Start>Without Debugging" macro. This would be simpler to maintain than creating your own macro with hard coded settings such as board and port.