Basic design.

Fixes #9.
Add session log.

Fixes #1.