What do you think a browser and an OS do, exactly?
A web browser needs to do render text, various high-performance graphics stuff, show some widgets that a user can interact with, provide a programmable runtime that can be used to create things like gmail or the github UI out of those widgets, do various network access, handle prioritizing things like web workers, painting, layout, and so forth. Oh, and nowadays also audio processing, real-time audio and video communications (WebRTC) and a few other things along those lines.
The non-kernel part of an OS needs to have libraries for high-performance graphics, show some widgets a user can interact with, a modern one will typically provide a programmable runtime for creating UI backed by some logic out of those widgets (C#, Objective C, Dalvik, etc). Pretty similar to a browser, actually.
Oh, and an OS needs to mediate hardware access, which is done by the kernel. Oddly enough, Mozilla is not creating a kernel from scratch; they're using the Android neÃ© Linux kernel in FirefoxOS. Maybe because they figured this was not something they were experts in and maybe using an existing reasonably good solution would be better than trying to create a new thing.
Which is why it was possible to create FirefoxOS by taking a browser and adding a few APIs for touching hardware that the kernel exposes (things like cameras, FM radio, cell radio, etc). Plus a bunch of optimizations to the browser core that are needed no matter what to have a competitive browser.