Use pint for unit handling

I think the new unit handling method is ready to get added to the main branch.  The new method differs by:

* using the _Pint_ library for their unit/quantity implement (replacing our original implementation)
* adds metadata to data frame identifying units of each column with the ability to update units on data frame slicing and other operations
* adds functionality to convert data frame columns to other compatible units.  Conversions can be performed on column-by-column, subset of columns, or all columns containing a particular type of unit.  Default behavior returns a new data frame with the converted values, but original data frame can be overwritten as well by passing an optional parameter.
* an additional function has been monkey-patched to the data frame called _explore_ which prints a summary of each column and its meta data.

This code has been tested in Python 3.3 and by @howardcheung in Python 2.6.  To do additional testing, use the IPython notebook tutorial included.