Initial commit.
Requires some cleanup, tbc.