events for microphone plugin

This adds some events to the microphone plugin allowing the user to handle errors.