Prepare UI and game client for new panes

* Now UI class behaves more like a class.

Commit references #28.
Another take on handling UI and Display

* Separate UI in 4 blocks.

Commit references #28.
Return actual equipment from the server

* Restructure and organize UI class a bit.

Commit references #28.
Complete equipment screen

It's a bit wacky, but good enough for testing purposes.

Commit references #28.
Add inventory screen

Basic inventory screen, nothing fancy so far.

Commit references #28.
Refactor lib/event code

* Unit tests for event code (hello test-driven refactoring).
* Changes to UI and client code to accommodate the event changes.
* Minor: remove doctest from Makefile's "test" target.

Commit references #46.
Refactor space.py, add key layout extenders

* Key layouts can be extended in event class to generate custom commands
programmatically. Useful for dialog options, inventory items and other
multiple choice situations.
* Unit tests for collapsing and expanding layouts.
* Cyclomatic complexity of space.py is reduced, now it looks a bit more
tolerable. However work here is not done, UI is a bit screwed up.

Commit references #46.
Status messages for arg_required cases

* Fix broken test.

Commit closes #46.
Merge branch 'event-refactor' into panes
Merge branch 'panes' into develop

* I am not sure at the moment what my plans were for this exact
branch. I also can not seem to remember how the issue was meant to
be resolved: I'll close an issue an will merge the branch back into
develop branch - but it might need to be reopened at some point.

Commit closes #28.