About 2 years ago (time is flying) I explained how I did the same to support range queries over "n" attributes, the method ended up being in the book "MongoDB, the Definitive Guide" by Chodorow and Dirolf (O'Reilly):
What should be added to this is the ability to tell Mongo to return an error if your query requires a table scan. That one configuration item can be the difference between a request returning an error and a whole site going down for an extended period.
Right I was saying that the author should add that to his article. Its a very valuable configuration item and anytime your dealing with optimizing indexes its worth enabling.
http://chemeo.com/doc/technology
(Search for "Indexing For High Speed Search" to skip non MongoDB related information).