automate setup and build