Overhang angle control and optimal part orientation in topology optimization for additive manufacturing