Initial commit

Lay out application structure and start coding features into it.