Preliminary database design.

Note that sqlite does not enforce foreign keys, they are included more
as a description. Additionally, I didn't explicitly define a primary key
so sqlite will automatically use the row id as the primary key. I did
create unique values, which I consider more important.