Separate the core classes and methods for better modularity.  Renaming to Atom.