Refactor
initial attempt to get atoms working
Add c files