acu115916 added shell/interface to establish a contract for custom shell implementations, etc.