Numerical Shape Optimization With Finite Elements