Some things I'd like to see in the next generation of browsers:
- Modular design. Many things like rendering engine, history/cookie/cache mechanism, configuration framework, UI, sync system, download manager, privacy enhancements, ad blocking/request filtering, extensions should be separate programs (with independent authorship) that follow some common, compatible interface. Advanced users can mix and match these components to assemble their own "browser", or even develop their own components. "Browser distributions" can be created for less technical users that are plug and play.
- Ad blocking, request filtering and cosmetic filters as core functionality, rather than some exotic thing for the adventurous that is best left to extension developers. These require low level access to the browser's internal workings, they don't work well as regular extensions because those usually have security restrictions. They also need a solid UX that can provide enough granularity to be useful. Probably a good system for crowdsourcing the filter rules as well.
- The browser shouldn't treat the server as incontrovertible gospel. It shouldn't necessarily run every script the server sends over, or provide a full inventory of capabilities (fonts, filetypes, etc.) unless there is a good reason for it. Rather than server as master and browser as worker, the connection should be treated as a contract where the browser is concerned with protecting the user's interest (privacy, usability) rather than slavishly obeying the server's whims.