#362 Sample operation initial work

Initial version of Sample() operation implemented and tested for numpy and pandas.
Sample() should randomly select some items from a given datasource and return them.
For numpy and pandas, the returned data are new arrays or dataframes or series.

There is a lot of repetition between numpy, pandas, tables, and bcolz.  A trick like the following might be able to use call the NumPy solution from the others'.

```Python
f = compute_one.dispatch(Sample, np.ndarray)
return c(expr, data, **kwargs)
```