opt: cli code structure
add: basic support for plugin
opt: cli
upd: doc