Initial commit. Code does not yet compile.