Combined optimization of part topology, support structure layout and build orientation for additive manufacturing