most oem head units are where the amp is located in right? Is the reason you think there is much improvement from replacing oem head unit is this reason or for another reason?
Part of the reason... but not all of it. Try to look at it this way - there's two basic things the OEM head unit does to produce sound:
A. It sends a range of signals consisting of frequencies to the speakers (the high music notes, low bass, midrange voices, etc.) and
B. It amplifies the signal to make the sound louder.
Most "non-premium" OEM head units tend to reduce/limit the highest (high pitch tones) and lowest (bass) frequencies when you turn up the volume. They do this to ensure you don't blow the OEM factory speakers. They're also pretty weak as far as amplification goes. So not only do you have a smaller range of frequencies going to the speakers, but chances are the OEM speakers themselves are very basic in producing good sound, which is why when you turn up the OEM stereo to full volume, it sounds like crap.
When you upgrade to an aftermarket head unit, you eliminate these restrictions. A decent aftermarket head unit will be able to send a wider range of frequencies to the speakers, which means crisp, better sounding music. Even the built-in amp in aftermarket head units are capable of higher (and more importantly, cleaner) power than OEM. Along with this, you also get any extra features that the aftermarket head unit has (i.e. video, backup camera integration, etc.)
Which takes us to your second question -
separate question, what do you think about getting new speakers to replace the stock 2 front and 2 rear keeping the oem head unit but adding a small aftermarket amp?
IMO not worth the trouble, because of many things:
1. Your OEM head unit doesn't have a way to connect to the aftermarket amp other than speaker-level out. That means you need an amp that can take a speaker-level input. Then the amp has to convert that signal back to line-level, then amplify it again. Or you can use a line-level converter to take your OEM speaker outputs, cut it down to line-level, and then feed that into the amplifier's input.
2. How are you going to get the signal from the aftermarket amp to the speakers? You can use the factory speaker wires, but it's a lot of cutting and splicing just to put an aftermarket amplifier between the OEM head unit and the factory speaker wires. Or you can actually take apart the door panels and run new speaker wires to all the speaker locations.
3. In the end, after all that, you'll STILL have the restrictions that the OEM head unit has, so you may have louder output (due to the aftermarket amp) and you might not blow the speakers at higher volume (due to upgrading the speakers) ... but the music itself will only sound
slightly better. I say "slightly" because your signal from the OEM head unit is still crappy to begin with.
Granted this is all my opinion. Some people are perfectly happy just swapping the OEM speakers out for aftermarket speakers and calling it a day. That's fine - if they're happy, who am I to say it's wrong? But if it's about actually getting better sound (not just louder), I prefer to do it the right way - which means again: you have to start with upgrading the source.