Resturcture the Definition Add

Signed-off-by: 9drashijin <9drashijin@live.com>
Finilize: documentation and rename test

Signed-off-by: 9drashijin <9drashijin@live.com>