Initial commit towards a blaze.where function for filters
First test passing for a BLZ table in-memory
Added a test suite for BLZ tables on-disk
Added a query test for HDF5
Using iterators returning true dydn elements now
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
CSV_DDesc takes keyword inputs to specialize dialect

Usually we depend on the csv module to automatically detect/sniff the
format of the csv file (e.g. what delimiter and line separators are used)

We still do this but now we also allow users to override the
automatically detected settings with keyword inputs.

This required us to stop using the old-style classes in csv.dialect and
instead use dictionaries.  This is, I think, much cleaner, but is also
less standard (if csv.dialects are standard)
switch out function tests for unittest tests
more standard use of assertEqual in array tests
Update for dynd instantiate_func addition of ectx parameter
Added the capability to persist a Blaze struct array in BLZ and HDF5
CSV_DDesc uses dialect when reading data

Fixes #216
Merge branch 'master' of github.com:ContinuumIO/blaze
Moved the blaze._where to a method in blaze.Array
Added tests for BLZ/HDF5 datasets created right in blaze.array()
Merge branch 'master' into array-iter
Merge pull request #212 from mrocklin/array-iter

Array.__iter__ yields either scalars or arrays
Getting element from array yield element not array

Previously:

    >>> blaze.array([1, 1, 1])[1]
    array(1,
          dshape='int32')

Now:

    >>> blaze.array([1, 1, 1])[1]
    1

This new behavior only happens if the indexed array is not deferred
omit dialect keys that start with _

rather than that contain _