Naming consistencies.  I shouldn't (provide 'stack-mode), I should (provide 'stack) and M-x stack-mode.
The scratch buffer should always be lisp-interaction
It doesn't make sense for a mode to have an argument, so
now it is just a function that enters the mode instead.