This is a list of the required functions for a plugin to
be considered valid by the Analytics Framework.
   - getName() - Returns a non-empty string containing the name of the plugin.
 
   - getVersion() - Returns a non-empty string containing the version of the plugin.
 
   - setPluginID(id) - A function for setting the plugin id on an instance of the plugin.
 
   - getPluginID() - Returns the plugin id assigned by setPluginID().
 
   - init() - A function for initializing the plugin.
 
   - setMetadata(metadata) - A function for passing metadata specific to this plugin.
 
   - destroy() - Destructor function for cleanup.
 
   - processEvent(eventName, paramArray) - A function to receive events that are published through the framework.