Added Traits and improves into existing classes