i wud suggest u look at the whole car audio system. Most of the installers mentioned in the forum charge very high. and not necessarily the best in terms of tuning and honesty IMHO.
u are driving e46, the most apparent inadequacy is the absence of low freq. The permutations of what can be done is endless, and as mentioned by some resident forumers, it depends on your budget.
Maybe u wanna reveal more about your requirments. i m guessing u are not an ICE enthusiast, therefore u may just need a good-enough system setup.
The first question is...do u wanna change your headunit ? ICE enthusiasts will tell u Garbage in Garbage out, ie no matter how good your speakers, amps etc are, the source of the signal, which is the headunit (HU) is very impt. NOt to worry though, if u are not discerning enough to tell whether the cello sounds real enough etc, u can keep your existing HU.
U definitely need to change the front components (midbass and tweeter).
U SHOULD add a subwoofer, get the enclousure type. a 12" will do.
Get an amp , but i recommened separate amps for the components and the sub. This is your main qn. What should u buy. Depends on budget. Reputable brands include Orion, PPi, JL Audio, Soundstream, Phoenix Gold etc... quite a long list actually.
U may be able to get good deals in the ICE forum.. but be ready to be poisoned cos there are some really hardcore enthusiasts there.