Hi Chuck,
from our own experience I can say that namespaces work great for serving different domains from the same app. Haven't run into any issues with namespaces.
When building multi-tenant applications (which is what we do) it much depends on whether you need functionality that spans across tenants (like global reporting... etc.)
If not and you're happy with each tenant living in its own little sandbox I would recommend using sub-namespaces to separate tenants. It's simple, secure and it scales...
If you need to act globally on tenant data I would suggest using composite indexes starting with the tenant ID to separate tenants while maintaining scalability.
Wolfram