initial work on the shell module