Pull request

Major rework / improvements