So I'm finally getting around to replacing our mesh extruder class with the libMesh implementation.  It's always nice to delete duplicate code :)

In switching things over, I noticed that there were two things that our extruder class does that the implementation in libMesh does not.  The first is that we can optionally supply the desired side set numbers for the "ends" of the extrusion.  However, no big deal here, I just added a few lines to our wrapper to renumber after the fact.  

The second item however may be more of an issue.  Right now we maintain the subdomains present in the source mesh.  If the user creates a 2D mesh with a number of different regions they will all be extruded in the output.  The libMesh implementation just leaves the default subdomain which is always zero.  I propose that we change this, any thoughts?