lots of version automation stuff