Add fundamentals::environment user config class

This removes the shell & editor configuration from the
bootstrap module and moves it to a configuration exercise for the
fundamentals course. The exercise allows the student to choose their
favorite shell & editor.

This configures syntax highlighting, etc for editors and sets up useful
aliases for shells. The chosen shell & editor is configured as default.

This may mean that we'll need to add it back for the Learning VM.

The class accepts two parameters:

* `editor`: accepts emacs/vim/nano
* `shell`: accepts bash/zsh