I don't think employers should be able to fire for just any reason. You hired them because you thought they would live up to your expectations, and if they continue to do so and give no actual reason to be fired, why fire them?
If an employee does start to lack on why you hired them, or just don't live up to the potential you see in them, sure let them go. But if they are doing their job how they are supposed to, and meeting expectations why punish them?
Thats just my thoughts..