For a collection of points in $\mathbb{R}^n$, is there a statistic that I can compute which will estimate the number of clusters with some level of confidence?
This is an ageold question, which actually does not have (I think even cannot have) a definite answer, because first you need to define what you mean by a cluster and so on. A famous saying in this regard is that "cluster is in the eye of a beholder". It is easy to construct examples where somebody could see one cluster, but somebody else more than one. This being said, the MDL (minimum description length) principle would lead you to devise (IMHO) a clustering cost function in a most principled way, which by optimizing you could the find the cluster assignments and number of clusters simultaneously. For multinomial data you can see following: P.Kontkanen, P.Myllymäki, W.Buntine, J.Rissanen, H.Tirri, An MDL Framework for Data Clustering. In Advances in Minimum Description Length: Theory and Applications, edited by P. Grünwald, I.J. Myung and M. Pitt. The MIT Press, 2005. The intuitivelyappealing idea behind MDL clustering is that by clustering you create a model of the data. So the assumption is that a very good model is one that lets you compress the data well. Anyway MDL might not be easy to apply, if you are looking for a practical way to detect the number of clusters. BIC (Bayesian information criteria) and the Fratio have proven to work OK in practice. 


I don't know if this is the most effective answer, but it has to be one of the coolest: Barcodes: the persistent topology of data It lets you estimate not only the number of connected components but also the higher Betti numbers. (For instance, if you take a random sample of enough points from an annulus, you will be able to measure both H_{0} = Z and H_{1} = Z.) 


Carlsson has developed methods from applied topology to do clustering work. Robert Ghrist called a talk about this "Clusterfunctor" since it involves a functor from metric spaces to "persistent sets". It's talked about in Topology and Data, a survey article about using topology to do data analysis. 


I think that for computing a level of confidence you need a model of clusters, for example a gaussian mixture model. If the level of confidence is not an issue and you need simply the "right" number of clusters I would repeat what Ville said plus the following article: Estimating the number of clusters in a dataset via the Gap statistic (2000) Tibshirani, Walther, Hastie http://citeseerx.ist.psu.edu/viewdoc/summary?doi=10.1.1.34.6664 


There is a whole research field on this, and the answers so far have only highlighted a few of the specific algorithms developed. Check out this Wikipedia article on cluster analysis for an overview and some references. 

