added branch for 2.1.0 release - needs massive improvement but works for now