Regarding the animation thing: Shooting animations fine, okay, can be done by script, but what about reloading, switching weapons and stuff like that?
I'd recommend you to use the ent.pose parameter and ent_blendpose in order to combine these animations with running, walking, etc - it works well, and makes also the transitions between the standard animations smoother.