Uploaded dissertation and source code. Some renaming of classes to match those used in the dissertation.