Hopefully a working DiffAtom::DiffAtom() function
No guarentees of function, likely need to modify later