Add DeviceDataFrame.get_sort_func method...

Add `DeviceDataFrame.get_sort_func` method to return compiled Cython
function based on the specified key and value column names.  The
resulting function can be used to actually perform the sort by passing
the key and value columns in the order they were passed to
`get_sort_func`.
Add `DeviceDataFrame.sort` method (uses Thrust)

Add `DeviceDataFrame.sort` method, which uses dynamically-compiled calls
to Thrust `sort` *(or `sort_by_key`)*.

__NB__, Only values in specified columns will be modified.  In the case
where no columns are specified, rows are sorted across all columns.