singularity is now OOP

atom proc singularity_act() now handles what the singularity does to stuff
can we have a comment here explaining the logic behind this check?