Java code splitted into several methods.

Each method represents a tree. Playing games with Javassists.
Merge branch 'master' of github.com:0xdata/h2o

Conflicts:
	src/main/java/water/Model.java
Merge branch 'master' of github.com:0xdata/h2o
Merge branch 'master' of github.com:0xdata/h2o
Improvements in wrapper for StringBuilder.
Merge branch 'master' of github.com:0xdata/h2o

Conflicts:
	src/main/java/water/Model.java
Moved GBM-specific code recomputing probabilities into GBm-model.
Renamed jcodegen utility.
Tree model CodeGen generate a class per tree.
Proper handling of HTTP505 if exception is thrown.

Since HTTP505 can be send from exception handler, its parameters
(_arguments field) do not need to be initialized or initialized by
values from other thread. Hence they need to be refilled.
Java code download as regular request type.

Each request can now support .java extension which
should serve a code implementing a model (see DRFModelView,
GBMModelView).
The Java codde is returned as plain/text response.
If the request does not support .java request type,
505 page is returned so far.

Note: since NanoHTTPD is busted it does not allow
for configuring content-disposition. Hence downloaded
Java file has always wrong name.
Removed debug prints.
Merge branch 'master' of github.com:0xdata/h2o