ความแตกต่างระหว่าง Trait , Extend and implement
Trait มันเป็นตัวขยายคุณสมบัติพิเศษ โดยไม่ยึดติดกับคลาส
ส่วน Extends มันต้องพึ่งพาแม่เสมอ
implement ส่วนขยายคุณสมบัติ interface สามารถ implement method.
Cr. https://stackoverflow.com/questions/10839131/implements-vs-extends-when-to-use-whats-the-difference