abstract behaviours out of behaviour constructs. Makes it easyer to extend app with custom behaviours