refactor clang to use CompilerState

instead of passing data through returns.
Now consume returns code and produce returns None
CompileState for grappalang
makefile for dots
Merge branch 'master' of github.com:uwescience/datalogcompiler
Merge branch 'master' into bmyerz-compile-state

Conflicts:
	raco/clangcommon.py
Merge pull request #123 from uwescience/bmyerz-compile-state

refactor clang to use CompilerState
Clarify comment
Merge pull request #120 from uwescience/andrew_cfg

Add dead code elimination, statement chaining to Myrial
Merge branch 'master' into dhalperi-add-flake8-v2

Conflicts:
	raco/clang.py
	raco/clangcommon.py
	raco/grappalang.py
	raco/pipelines.py