Added event and options functionality to base classes