change project structure; impl basic cli builder and usage formatter