First working version of Traits