move concept

1. traits => concept
2. move manipulation into concept