unless you have an employment contract that says otherwise, and the termination is not for an EEO protected basis (age, gender, race, ethnicity, etc), you can be fired for any reason - or no reason. you are an at will employee
similarly, you can leave your employer for any or no reason (again assuming there is no employment contract which specifies otherwise, removing you from the 'at-will' category)
yes he could. accept this challenge: tell us what you could have done had he fired you, such that you could have retained your jobExample: A few weeks ago, my boss wanted me to haul an illegal over-dimensional load. I wasn't going to do it. He couldn't legally fire me for refusing.
again, you could be fired and i again offer the same challenge, to show us what you could have done to retain your employmentAnother example would be an employee refusing to perform tasks in such a way that are unsafe. The employee can't be fired for refusal.
in some industries, where they depend on a small pool of specially skilled potential hires, yes. otherwise, noNot to mention, it's just bad business to fire someone without a good reason. Once word gets out, you'll never find worthwhile employees.
with the large pool of ready applicants with the skills required to perform the job, the employer can cycle thru a lot of them and the supply of qualified candidates will remain adequate
that changes when the economy favors the employee, and demand for labor exceeds supply