Add basic `shell` mode
Add fully-featured `shell` mode

v1.7.0