Implementation of a DataFrame row as a parameterized SubDataFrame
Add Ranges{Int} to SubDataFrame parameterizations, simplify some function signatures
Misc updates to SubDataFrames

* Change EachRow, EachCol -> eachrow, eachcol, to better match
  Base convention for iterators
* Start to use size(df, 1) for nrow(df), size(df, 2) for ncol(df)
Fix sub for SubDataFrames
Update tests for sub-ranges of SubDataFrames
Refactored to create a separate DataFrameRow class

Also:
* DRYed out sub() functions
* Deprecated subset (alias for sub), on the theory that we should
  remove redundant methods like this
* SubDataFrame can still be parameterized with Vector{Int}, Ranges{Int}
* Changed type to immutable for SubDataFrame, various other related types
SubDataFrame, DataFrameRow fixes

* Export DataFrameRow
* Re-add missing sub(DataFrame, Int) functions
* Fix tests
* Comment out failing test requiring iteration over elements of a
  DataFrame row until we decide how to do that.
Always return a SubDataFrame with sub
Added isna(x::Any, idx::Real) to allow indexing of scalars with 1
Remove Int from RowsType
Various updates

* Special case sub with integer indices
* Add iteration over DataFrameRow
* Add show() for DataFrameRow