Separated GBM and DRF tests.
Iris train/test datasets.
Top-level H2O project for UX-client.
Break up big files

also begin execution model that supports 1st class fcns
tons more slicing & exec work

Gonna need some kind of vector lifetime management soon.
Get array slicing more generic.
Begin evaluating slice expressions.
tons of temp work

...sorting lifetime management, notions of big tmp that must be
available, etc...
Plow thru the function-op-vs-application split

Now function *application* is well defined & split from parsing function
ops (still only built-in functions, no user functions).   Back to sane
parsing of all expressions (but nothing executes)
1st class function scopes

Also clean up ASCII grammar
Allow leading dot in name
Type-inference is probably still too weak
assignment makes new vars

can assign a primitive fcn to a var
rename Expr as Val
Add a "statements" to the grammar
Bug fixes in error printing
Deep function type checking

Can parse 'Reduce' which takes a function argument.
DRF changes.
 - proper sampling
 - handling of oobee rows. OOBEE is computed on the fly. OOBEE rows are
   handled separately but we track in which leaf they are put.
   Tree_<class> columns carries prediction of oobee rows.
- minor correction around - NPE for sampled-out rows, corrected
  computing votes of individual trees.
Merge remote-tracking branch 'origin/master' into drf2

Conflicts:
	src/main/java/hex/gbm/SharedTreeModelBuilder.java
	src/main/java/water/api/DRFProgressPage.java
Auto-insert 1st-class map calls to expand arrays

map will apply a function over an array.
Auto-insert in contexts with arrays and a simple scalar function
assignment type check & shadowing rules

Inner-scope assigns cannot change types (probably a mistake).
Outer-scope assigns actually define a new local var & shadown.
Unknown var uses give better error msgs.
ncol/nrow require an array
Top-level exec takes a statement list.
Revamp grammer rules to allow cascading function applications
Hindley-Milner typing

Yup.  HM.  Missing some varargs handling.
Otherwise appears to be fully "functional" - bad pun intended.
More things removed for having HM typing

Simpler yet again
Higher order functions are fun!

...plus varargs.  Bug fixes for fcns passed fcns returning fcns.
Sort IP addresses so that those for the bond driver are considered first.
Log possible ip addresses.
Merge branch 'master' into tomk-bond
Strong typing of polymorphic + & bin ops

Allows mixing arrays & scalars; type system notes where broadcast ops
are needed.
Probably too aggressive in the type system, but seems to keep strong
typing
almost sane when mixing scalars & arrays.