style
split build script into models