My lessons learned on #2, which I will hopefully apply better to #3.
1. Don't duplicate the entire business. Figure out which location is the main office, and which is the branch. Make sure the branch has what it needs to do business (tools, etc.) and none of the extra stuff. You shouldn't need much in the way of office supplies at the branch.
2. Figure out the phones ahead of time. Our second store is in a different area code, so we wanted a second incoming phone # in that area code. It has not been worthwhile. Customers calling for status checks, directions, hours, etc. seem to have this uncanny ability to find the phone number for the other store.
I am in the process of having to convert everything over to VOIP with a automated attendant to route the calls properly. I fully expect that 10% of customers will just hang up when they discover the change, and I imagine a good portion of them will still find a way to confuse the system into sending their call to the wrong store.
3. Come up with a plan for customers that refuse to talk to an employee, because they liked the looks of the owner the first time they were in. When you do, please call me and let me know how you did it. I would love to be able to keep some of the customers, but I don't have the time to deal with the ones who refuse to let us do any triage.
4. Don't be so close that location #2 siphons off too many customers.
5. Don't be so far that location #2 is in an area where you have no customers or reputation.
6. Don't be so far that you are unable to effectively manage both locations.