Early prototype

CSS needs a lot of refactoring, but this front-end should work decently
well on computer/tablet/mobile and any browser.