Datashape Discovery

```Python
In [1]: from blaze.data.csv import CSV
In [2]: dd = CSV('user_edges.txt', 
                  columns=['transaction', 'sender', 'recipient', 'timestamp', 'value'], 
                  hints={'timestamp': 'datetime'})
In [3]: dd.py[5]
Out[3]: (3L, 3L, 4L, datetime.datetime(2013, 4, 10, 14, 22, 50), 150.0)
```
```
$ head user_edges.txt 
1,2,2,20130410142250,24.375
1,2,782477,20130410142250,0.7709
2,620423,4571210,20111227114312,614.17495129
2,620423,3,20111227114312,128.0405196
```

Companion to https://github.com/ContinuumIO/datashape/pull/65 . 

TODO:

- [x] Discovery in CSV
- [x] Discovery in JSON
- [x] Discovery in SQL
- [x] Discovery in HDF5
- [ ] Deal with missing data