Adding a Pandas compatibility interface and speed optimizations

This pull request is not to be merged immediately, but provides the basis for a compatibility layer between Pandas and DataViews.

This provides the following functionality:

        * Conversion of Stacks and Views to Pandas dframes. This 
          was already partially implemented but from now on all View 
          types can provide a dframe conversion method, which a 
          Stack can then add its own dimensions to and concatenate.
          Currently only Tables can be exported, but the system is
          easily extensible.

        * Allows integrating several Pandas plot types with the
          DataViews plotting system (includes plot, boxplot, histogram
          and scatter_matrix). This means they can be composed into
          grids and animated over.

        * Allows conversion of the Pandas DataFrames to different View
          types, including Tables and HeatMaps.

        * Provides several convenient wrapper methods to apply
          DataFrame methods and slice data. This includes:

              1) The apply method, which takes the DataFrame method to
                 be applied as the first argument and passes any
                 supplied args or kwargs along.

              2) The select and __getitem__ method which allow for
                 selecting and slicing the dframe using NdMapping syntax.
We should consider making ``DFrameOverlay`` (and similar) into a class attribute so there is no need to repeat ``__init__``. This would allow this class to be a very simple subclass of ``DataPlot``.