Build scripting framework