I don't like bloat in web browsers because, often, if just adds features best left as an add-on. Also, in something as important as a web browser, I feel a smaller codebase is wise from a security point-of-view.
I agree in principle, although in practice allowing Firefox add-ons to be fully equivalent to other features has been a detriment to security, stability and performance - hence the switch to WebExtensions (which rely on stable APIs purposely exposed by Firefox).
Having the codebase be as small as possible is a laudable goal - with browsers it is difficult since Web standards are fairly complex on their own, and being cross-platform brings along a lot of weirdness.
An important aspect of security is compartmentalization - for instance, using separate sandboxed processes for web content vs. the main UI (which runs with full user privileges).
Sandboxing is a good example here since it improves perf/stability/security but also adds to the size and complexity of the code.
I agree in principle, although in practice allowing Firefox add-ons to be fully equivalent to other features has been a detriment to security, stability and performance
Only in an abstract "we might have been able to implement security/performance improvements faster if we wouldn't have had to worry about breaking addons" sense. Any other effects are restricted to those people actually using the addon and don't affect everyone else.
A powerful extension interface can also be used to improve performance/stability: while e.g. adblocking certainly doesn't come for free, its cost should be more than offset by not running all that crappy code pulled from ad networks.
This was actually one of the arguments for feature shredding things like browser customization (see Classic Theme Restorer) and tab groups (see uhm Tab Groups).