Bug #169: Removed unnecessary null pointer checks

Explicit null pointer checks were performed at some source code places
before pointers were passed to the C++ delete operator. This was unnecessary
because the delete operator will care for such parameter validation already.
http://www.parashift.com/c++-faq/delete-handles-null.html

Redundant checks were removed.

Signed-off-by: Markus Elfring <elfring@users.sourceforge.net>
Signed-off-by: John Peterson <jwpeterson@gmail.com>
Merge branch 'Remove_unnecessary_null_pointer_checks'
Fixes for parallel operation

misc_ex10 uses stitch_meshs, which currently requires SerialMesh

misc_ex11 wasn't properly querying a dof when run on more than one
processor.  sum() isn't quite the best solution, but it's the
simplest.
Fix for linker undefined reference error
Initialize threading support properly with MPI2
Proceed anyway without MPI_THREAD_FUNNELED

Making appropriate warnings less imperative is the price we pay for
making overzealous warnings non-lethal.
Only output warnings from rank 0
Add libmesh_warning() to --enable-warnings
Use libmesh_warning() when unsure of MPI+threads

This way anyone who doesn't want users to be spammed with
usually-false-positive warnings can shut them up.