Keras-enabled version

Big improvement on usability in the glorious post-paper time.
Most notably, training loop finally uses TF2.0/keras! Not much loss in performance.

- Main training loop now uses TensorFlow>=2.0, and can use Keras features
  * https://gitlab.com/Karel-van-de-Plassche/QLKNN-develop/-/merge_requests/17
- Improvement to quickslicer
  * https://gitlab.com/Karel-van-de-Plassche/QLKNN-develop/-/merge_requests/20
- Improved debugging
  * https://gitlab.com/Karel-van-de-Plassche/QLKNN-develop/-/merge_requests/23
- Committee nets with multiple outputs A. Ho, publication in preparation.
  * https://gitlab.com/Karel-van-de-Plassche/QLKNN-develop/-/merge_requests/12
- Add CMGnets (later dubbed HornNets), see P. Horn MSc thesis. Publication in preparation
  * https://gitlab.com/Karel-van-de-Plassche/QLKNN-develop/-/merge_requests/18
  * https://gitlab.com/Karel-van-de-Plassche/QLKNN-develop/-/merge_requests/19
  * https://gitlab.com/Karel-van-de-Plassche/QLKNN-develop/-/merge_requests/22
- Improve filtering for committee nets A. Ho, publication in preparation.
  * https://gitlab.com/Karel-van-de-Plassche/QLKNN-develop/-/merge_requests/16
  * https://gitlab.com/Karel-van-de-Plassche/QLKNN-develop/-/merge_requests/15
- Allow loading parts of Kerasnets
  * https://gitlab.com/Karel-van-de-Plassche/QLKNN-develop/-/merge_requests/13
- Allow not shuffling every epoch, saves time in large-dataset, small-network cases. See R. Winkler MSc thesis
  * https://gitlab.com/Karel-van-de-Plassche/QLKNN-develop/-/merge_requests/14