We use contracts for some projects, but my general rule is that if you feel you need a contract, you shouldn't take the job. A good GC will ask you for the bill and pay on the spot, not dodge the bill. These guys are rare, but do exists and you should try to find them and work for them exclusively.