I see you need a solution for both the UI and the server.
As far as event driven web development is concerned, you may try the EXTJS by Sencha. It a javascript based framework,standardized and one of the most preferred.
The best feature,which is the best according to me, is it can communicate with your server in variety of formats like the widely used XML and JSON. Considering this, it frees you from worrying about your compatibility with the server implementation. You may write your server in any language and communicate to the client via XML or JSON.
It provides APIs for most of the events on the web, and allows you to implement your own. It is based on OOP, so your inheritance works here too :).It is has support for the MVC pattern, which will be bit difficult to digest in the beginning , as it is a common perception MVC - on the client - really? But have faith once you get the hold of it, its a smooth ride.
Almost all events have listeners(AJAX implementation). The UI look and feel is brilliant, and you get the feature of in built themes. In addition to this you have community support, dedicated learning material and API documentation, huge number of examples and even support for mobile devices.
Having said that, it carries various licences, it does have a GPL3 as well , but with certain terms.
For your ease I am posting the link to both the framework as well as the licensing terms
Framework:
http://www.sencha.com/products/extjs/
License:
http://www.sencha.com/products/extjs/licensing