Created by: portnov
This uses bmesh.ops.extrude_discrete_faces() operator. See also portnov#15. Please review.