New Core
Powered by [Ray](http://github.com/ray-project/ray)
* Memory- and time-efficient parallel FC computing with reduced serialization overhead as a result of using shared memory
* Runtime signals support: live output/pbar updates from remote FC
* Runtime cache requests (even from deeply nested FCs)
* Generic FCs
* Abstract ParallelFeatureConstructor class to define FCs splitting internal computations
* Stable Ray wrapper to restart it on failure and reuse cluster if already initialized (e.g. in another running notebook)
New UI
New UI subpackage with basic components for building rich reprs for arbitrary classes in OOP manner
New STL
`stl.apply`, `stl.category_encode` are reimplemented using ParallelFeatureConstructor
`stl.concat` also computes given features in parallel
Interactivity Increase
Feature computing and fitting reports update in real time, showing:
* Already computed features and time elapsed
* Features being currently computed, with progressbar and eta if `kts.pbar` is used inside
* Model fitting progress, with current loss/metric values if provided by the model
* Permutation importances computing progress
Other UX improvements
* Rich inline docs constructed from docstrings
* Clean model signatures to preserve IPython completion
* Property-like experiment addressing for the same purpose
Modelling
* Major refactoring
* Full custom models support
* Progress callbacks for boosting models
Validation
* Rich LB repr
* Multiple LB support
* Refactored Validator supporting subclassing and allowing to redefine splitting or evaluation
Tests
Core is mostly covered, special attention was paid to FC nesting
Tutorials
* New Titanic tutorial connected to binder
Future Work
* HPO submodule implementing ASHA
* NNs in `kts.models`
* Dependency tracking development and `kts.serve(experiment)`
* Kaggle integration
* Other stuff