Lots of new features and improvements, some bug fixes

Lots of new features and improvements, some bug fixes

!178 (commits)