How to create custom NPC's?

This is a basic Source Engine question, how do I add a custom NPC with a model and skin to the game?

Please help, this is one of the few things holding my map/mod back.

Creating an NPC

Thank you so much Terren!