Initial commit

Needs to be cleaned up quite extensively; this is just a POC.