Array.__iter__ yields either scalars or arrays

Previously this yielded DataDescriptors

>>> list(array([1, 2, 3]))
[1, 2, 3]

>>> list(array([[1, 2, 3],
                [4, 5, 6],
                [7, 8, 9]]))

[array([1, 2, 3], dshape='3 * int32'),
 array([4, 5, 6], dshape='3 * int32'),
 array([7, 8, 9], dshape='3 * int32')]

This matches the API established by numpy
minor tweaks to csv ddesc
switch out function tests for unittest tests
more standard use of assertEqual in array tests
Merge branch 'master' of github.com:ContinuumIO/blaze
Merge branch 'master' into array-iter
Merge pull request #212 from mrocklin/array-iter

Array.__iter__ yields either scalars or arrays