The point on whether or not it can be done at all with the HL engine is moot, its already been done, and the character save should not be much more difficult than any of the ranking systems they have out for HL, in fact the cs-wc3 servers have a running rank system that you can access while in-game.
I imagine that you could just build off of what already exists and make it ESF compatible.
I imagine that you could just build off of what already exists and make it ESF compatible.