Nothing in this submission script is particularly difficult. Just pay attention to how we use the User and Contact maps (hidden fields) to be able to update the lookup fields on the account record.
The most difficult part of this is keeping all our sequential and conditional actions straight. That is why it is so important to map out and plan ahead of time everything that needs to happen. Once we have that straight, writing the actual code is not too crazy.