some changes to style and organisation of mixins; structural update