-- Added constrained multi-block optimization to Albany/ATO

[AMB: I'm rejecting the mods to nfm[]. At least for now I'm not comfortable
modifying a lot of non-ATO files when my objective is to merge ATO while
maintaining the state of the rest of Albany.]
filter now works in parallel.  added test problem.
added poisson problem to topological optimization
added test problems
fixed syntax error in Filtered_2D test problem
added new tests to CMakeLists.txt
Make some mods to new ATO code.

1. Mod ATO/CMakeLists.txt to handle DOTk dependency.

2. Restore original wsElNodeID-based gid lookup. A bug in a recent commit had
temporarily made wsElNodeID return lids rather than gids; I fixed that bug
(previous commit) and have now restored the ATO code snippets that use that
index lookup to their original forms. Sorry ATO team about the confusion!

All tests are in their nominal form; in particular, the 6 ATO tests pass.
Final cleanup on this ATO merge.
Match master's version of this file.
Fixed bug in cmake script that caused HMC example problems to be skipped.
Added support for tensor data.