Project adjoint solutions with proper constraints

Previously if anyone tried to use an adjoint solution after a system
reinit() they'd have found it to have been corrupted by any *primal*
Dirichlet BCs.  Since correctly projected adjoint solutions might be
useful (if only as an initial guess for the fine grid adjoint solve),
let's make sure they get the correct adjoint BCs.
Project adjoints correctly in reinit()
Merge pull request #276 from libMesh/adjoint_projections

Project adjoint solutions with proper constraints