Hi
For importing cpanel backup files you upload them to the control panel server and restored out to the server you assign it to.
Staging websites exactly what it says on the tin so you have a live website and you can create a staging domain of it, make changes etc then push that out over the live site, very useful but you also can just assign no staging sites to a package to remove that.
Customers in enhance is not replacing whmcs it is purely so they have a login to their control panel, unlike cpanel it is not a separate login for each website so a customer account is needed purely for that purpose and the Enhance whmcs module sends them their one login and no mater how many hosting packages they purchase from you they will still only have one login to manage them all.
They can then add users with full access to everything or granular down to single or multiple websites.
For website imports to create the customer you would order a hosting package for them in whmcs unselecting create invoice, send email etc during the order in the admin side, we usually add the domain as the same domain they have for cpanel but with an a at the front, this order will set them up in enhance as a customer.
We then go and delete the domain with the a in front of it and then import the cpanel backup.
You are making a great choice Enhance is very usable for your customers.
Customers connect to the control panel server to login and manage sites etc and it handles getting the info from the relevant servers their bits and pieces are on so web and db on say 1 server and email on another and that makes it very fast also.
Thanks
Paul