Added Protocol class
Updates to event handlers
New Driver