Complete redo of how build works