A) is there some way that I can automate the process of "what gets built where" so that I don't have to drill down to the planet, click on which square I want and click on the building I want?
Ideally, i'd like to do something to the effect of "if you dont have a factory, build a factory wherever, and if you have a factory, build a research center, and if the research center is there, build a starport and if the star port is there, build a farm, and if a farm is there, don't build anything else"
I suspect not simple to implement quickly, however I remember in Stars! that you could create a build template. Maybe a global govenor to set a simple template. More complex subjective templates/rules could be difficult to show in one govenor window, but some effort should be made to this end if possible.

more importantly, is there some way i can "buy for all of these planets" where i can either select every planet that i have, or select a series of them. That way, i don't need to click on every single planet and hit the 'buy' button which gets long and annoying
Should be easy to implement,
for each objPlanet as planet in planets
if objPlanet.improvements.Exists("Emptytile") then
dim objTile as improvementtile = objPlanet.improvements.GetTile("Emptytile")
objTile.markforbuy = true
end if
for each objPlanet as planet in planets
for each objtile as improvementtile in planets.improvements
if tile.markforbuy = true then
total = total + costofimprovement
endif
next
next
So next you ask user if total is acceptible for 10 purchases, give lease options etc
If yes they get bought if no clear the markforbuy flag.
Simple

I would also like to see a upgrade x improvement to y improvement. sometime you aquire a tech that is not as good as the one you have e.g. a factory at 6bc and 12mp however I might want to upgrade that with a 3bc and 10mp (Torian tech tree I Think) halve your costs and only 16% loss in mp.. Thoughts anyone