Bcolz loads into memory

If a result is less than a gigabyte then just shove it into a numpy array (which will, in turn, shove things into `DataFrame`s if necessary).

cc @jreback @cpcloud 

Builds off of #721.  So this PR should become a lot simpler once that's merged.
It doesn't but that'd be a good idea.  

The goal in this commit is to avoid chunking if the relevant columns can fit in pandas.  This would, I think, provide robustly good performance in the case of wide tables in which columns tend to fit comfortably in memory.