API changes
* Allow conversion factor of zero for `GenericTransformer`
* Python 3.6 is no longer officially supported. It may still work for a while though.
New components/constraints
* Custom component: oemof.solph.custom.PiecewiseLinearTransformer. A transformer model with one input and one output and an arbitrary piecewise linear conversion function. On how to use the component, refer to the `test script <https://github.com/oemof/oemof-solph/blob/dev/tests/test_scripts/test_solph/test_piecewiselineartransformer/test_piecewiselineartransformer.py>`_ and `example <https://github.com/oemof/oemof-examples/blob/master/oemof_examples/oemof.solph/v0.4.x/piecewise/piecewise_linear_transformer.py>`_.
* Enhanced custom SinkDSM:
* Renamed keyword argument `method` to `approach`
* Renamed approaches `interval` to `oemof` and `delay` to `DIW`
* Added modeling approach `DLR` (PhD thesis of Hans Christian Gils 2015)
* Included load shedding
* Introduced `recovery_time` in `DIW` approach
* Introduced `shift_time` and other parameters for `DLR` approach
* Included investments in DSM
* Normalized keyword arguments `demand`, `capapcity_up` and `capacity_down`
Bug fixes
* Check number of `Flow` s in `GenericStorage`
Other changes
* Split code into submodules
* Move CI-Tests from Travis to github (see `PR 746 <https://github.com/oemof/oemof-solph/pull/746>`_)
Contributors
* Jann Launer
* Johannes Kochems
* Patrik Schönfeldt
* Stefan Schirmeister
* Uwe Krien