Explain the difference between scala trait, mixin and real trait.