Fix build on Ubuntu 12.10
Cleanup and makefiles for 2D force-directed graph layout.
Merge branch 'master' of github.com:jsmeredith/EAVL
Merge branch 'master_cmake' (with a few fixes/changes).
Use C++ compiler instead of CUDA compiler for .cu files when not building with CUDA.
Removed 'REQUIRED' for Boost, as it is no longer needed for serial builds, and probably soon not for parallel builds either.
Revert to original 2D graph layout initialization code to avoid C++0x requirement.
Made capitalization of 'cmake' directory in top-level CMakeLists.txt consistently lowercase.
Fixed warning in cmake eavl macros.
Win32 use rand() instead of random()
Changing local config site to error on functions missing a return statement
Use comma-separated args list to pass CXXFLAGS through -Xcompiler for nvcc.
Fix all warnings from -Wall in gcc 4.6.3.
disable one specific warning nvcc seems to create in its generated code.
Fixing more warnings from -Wall.
Removing boost from parallel EAVL, and using raw MPI instead.
Boost and TR1 support is no longer required by configure, even with MPI enabled.

Boost now defaults to disabled if you don't specify a path.
It was no longer required if you didn't have MPI enabled,
and now that we use raw MPI for parallel stuff, we no longer
require it in any case.  I left the checks in, just in case
we need it later, but for the time being we should avoid Boost
to minimize mandatory dependencies, and we can add a
HAVE_BOOST define if we want to support optional boost
coding.

I also made a failed TR1 check no longer a fatal configuration
problem; we aren't using any TR1 code, either.
Removing boost from my workstation config-site file.
Adding a few perceptually linearized color tables.
Added missing break which caused double gpu-executions in some cases.
Infrastructure for new eavlOperation developer paradigm and first operation.

So far, this includes a new map operation that can take any number
of inputs and any number of outputs.  No more 1-to-1 or 3-to-3 or 2-to-1
map operation will be needed.

Infrastructure for doing to includes a tuple, a tuple-of-references,
a new dispatch (which, again, is not specific to the number of inputs),
a method to collect a tuple of values from the input arrays, and a new
array indexing class.

I also made use of the new map operation in the unary math mutator.
I added a negate functor so it would build, but disabled the other
unary operations for now.
allowing const qualifier for input array tuples in operations.
fix to ensure const in op inputs are actually respected.
adding some const missing in const version of collect.
adding const reference version of get for reftuples.