suzerain: rewrite with DeMorgan's law

Partway towards making Intel 12.1 accept the logic.
12.1 dislikes references to arrays of unknown bounds
(http://software.intel.com/en-us/articles/intel-c-compiler-for-windows-error-parameter-type-involves-reference-to-array-of-unknown-bound)
which arise when checking the traits.

git-svn-id: https://svn.ices.utexas.edu/repos/pecos/suzerain/trunk@44168 0bd85f0b-c151-43b9-a1e9-27231104551f
suzerain: reorder for Intel 12.1

Intel 12.1 requires the is_complex check last to avoid running afoul
of http://software.intel.com/en-us/articles/intel-c-compiler-for-windows-error-parameter-type-involves-reference-to-array-of-unknown-bound
on Boost 1.51.

git-svn-id: https://svn.ices.utexas.edu/repos/pecos/suzerain/trunk@44169 0bd85f0b-c151-43b9-a1e9-27231104551f
suzerain: move common cases first

Anticipate seeing more pointers than arrays, so make
the pointer check first for a minor compilation speed bump.

git-svn-id: https://svn.ices.utexas.edu/repos/pecos/suzerain/trunk@44170 0bd85f0b-c151-43b9-a1e9-27231104551f