Merged in Christopher, Shuyang contributions, add gitignore, remove intermediate files.