public static function get_instance()
 {
     if (!isset(self::$instance)) {
         self::$instance = new self();
     }
     return self::$instance;
 }
 private function __construct()
 {
     $this->plugin = Advanced_Ads_Plugin::get_instance();
     $this->plugin->set_model($this->get_model());
     $this->ad_selector = Advanced_Ads_Select::get_instance();
     // initialize plugin specific functions
     add_action('init', array($this, 'wp_init'));
     // only when not doing ajax
     if (defined('DOING_AJAX') && DOING_AJAX) {
         Advanced_Ads_Ajax::get_instance();
     }
     add_action('plugins_loaded', array($this, 'wp_plugins_loaded'));
 }