break up files smarter. node and cell should probably be combined