Initial commit of prototype. Has basic functionality.