Yeah, I think it would be better if you create Company, force save, then create Client with Client.Company = Company, force save, then create Contact with Contact.Client=Client.
It's just the force saving that is killing me.
This is the current form:

So you can see I have the default Add and Add New buttons. But the problem comes in when you save them. The winner would be keeping this and having the Client form open over this one, save, then open Contact over that.