Merge branch 'release'
minor refactoring
Merge branch 'master' into release