E: Package basic

This is the basic target of the current package work. It will contain the terminal in its own package, and depend on various other pull requests.
I think self.show should not be the same as self.enter.  It's probably harmless, but confusing.
```
self.show = function () { };
```