Anonymous objects are anonymous

A few changes:

 - Some formatting consistency changes, if( vs if ( wasn't consistently being used
 - Removed the trailing ?>, potential cause of issues, works better without it
 - The class was created as an anonymous object, which can cause problems "How would you remove an action or a filter of an anonymous object?", a primary instance is now stored as a static var, and created on the wp_loaded hook, so no more global namespace polution