Better debug output for COLA clusters.
Pass COLA edge lengths array using valarray.

Previously edge lengths were passed to COLA using a c-style array, then
converted internally to a valarray.  This meant the length of the array
could not be checked and logic to assert this didn't work.  This could
crash the code or cause strange behaviour if an array for edge lengths
shorter than the number of edges was passed to the library.  This
information is now passed as a valarray or an empty valarry if
individual edges lengths are not specified.
Fix bug with non-positive ideal edge lengths crashing.

Specifiying a zero/negative ideal length for an edge in the eLengths
argument of ConstrainedFDLayout could cause a crash or cause run() to
no effect on rectangle positions.
Output ideal edge lengths array in COLA debug file.