Initial commit and attempt. Lacks testing.