Time outs don't change things quickly. What they do is give everyone some room to breathe for a few minutes and calms things down. You calming down is just as important as them doing it.
Children at this age don't have the capability of being sympathetic or empathetic. You can be consistent and give quick consequences, redirect, or send them to neutral corners, but you really can't speed things up too much. It's a normal stage that you will be stuck in for a very long time.
When my kids start to hit, I realize that I'm not providing them with enough to do at the moment or we are falling into the same old routines. I believe this behavior is OFTEN a result of being under stimulated or downright bored.
I don't like to make open excuses for the mean behavior. Our only means of teaching the appropriate behavior is to keep telling them what we want, why we want it, and make it clear that in the end Mommy wins. But, Rome wasn't built in a day.