Fixes for SubDataFrames to better support AbstractDataFrames.

These changes should allow `sub` and SubDataFrames to work with other AbstractDataFrames. 

I don's have another AbstractDataFrame to test it on here, but DataFramesMeta has CompositeDataFrame.