The best bet is to run SME Server in Server-Gateway mode at the head of your LAN. That way any external VOIP clients (whether another SAIL instance or just IP phones) can easily connect without you having to get your head around a bunch of port forwards. This is a perfectly safe setup because SME Server has a full firewall in place.
To answer your specific questions:
1. If I go with the VoIP provider I am considering would SAIL perform the functions of a VoIP router?
Yes. SAIL has a lot of pre-defined provider templates, so check in the templates area to see whether the one you are evaluating is listed. Personally I would try to stick with a provider that has a template so that if there are issues they can be more easily troubleshooted here in the forums; but that is just my opinion.
2. If so would I then need to get IP phones and connect them to my network to enable the use of SAIL if setup as per Q1?
Ordinary phones won't work, so yes, you will need IP phones. Technically you could run soft-phones on your PCs but IMHO that is not a great idea.
3. How then would remote extensions work without a SAIL server at the other end?
SAIL supports remote extensions out of the box. So long as the remote phone can connect to the public interface of the SAIL server (e.g. no firewalls in the way), you just define the extension as "remote" in the server manager. If you fiddle with the handset and SAIL, you can probably get auto-configuration of the remote handsets via FTP working as well.