Revisit VersionBuilder and make all code paths go though Profile/VersionBuilder