D.K.
He is truly too young to understand lying as adults do. He likely does one of several things - tells you what he thinks you want to hear (he is trying to please when he can tell you are getting mad), he is telling you what he wishes happened (sort of like when adults go through a situation in our minds and think about what we could have done differently but not nearly that sophisticated) or just telling you what is true for him now. He probably does know the difference between real and pretend but not why it is important.
Things you can do:
1. If you know what happened, don't give him the opportunity to tell you something different. Ex. - I saw you spilled the milk, tell me what happened, instead of 'who spilled the milk'.
2. Address the issues he is having trouble with. Getting him to admit he 'lied' doesn't give him the tools he needs for next time. Ex. he broke his toy and when you asked said something else happened to it. Instead of focusing on the 'lie' you say 'oh, elephant is broken. Let's fix him and next time let's keep elephant on the shelf instead of the floor where he will get broken. Now, what can we do to keep elephant from getting broken again?'
He is likely hitting because he is frustrated and needs better tools to communicating or obtaining what he wants. Yes you still need to repeat 'no hitting' (over and over and over without losing your temper or hitting your own head against the wall).
AND you need to give him something he can do - because he has every right to be mad at you sometimes. Things he can do - tell you/or his friend he is mad and doesn't want to play with you anymore, say he is mad and walk away, stomp his feet, hit a pillow or some other way of expressing his anger physically that will be acceptable to you.
Then model the acceptable behavior for him. Ex. you say ' mommy, I am really MAD at you, I don't want to play with you now' , then you (being mommy again) say, oh, well then when you are done being mad, tell me and we will clean up your room together (or whatever the issue was).
Finally - you need to teach him tools for getting/communicating his needs (same as for lying). Punishment does not add to his toolbox, modeling new/more effective behaviors for him does. If you show him how to tell other kids not to hit him and show him to leave and go play with a kid who is not hitting him, I think he will be less likely to be bullied. If you just tell him not to hit (and punish him for it so he knows it is important to you) but don't give him alternatives, what would he do but just stand there and let another kid hit him?