First draft of file structure, port classes from Compete.