Mayor refactoring, using named parameters
Merge branch 'refactoring' into development