Main plugin class