Each NPC requires their own house, as you know. The house must meet the following requirements:
9 x 7 tiles (Including walls & floor)
A light source
A chair (Any)
A table (Any)
Walls and floor
If their house is destroyed or any of these aspects are removed from the house, they will move out and...