How can I create a Yelp-like site?

Here's exactly what I'm looking to do:

* Create a site that reviews public relations agencies and solo practitioners.
* Profiles of the agencies/solo practitioners should be able to be created either by an admin or the actual company/individual.
* Registered users should be allowed to review agencies/solo practitioners based on several criteria defined by me (the admin) -- much like this: http://themeforest.net/item/reviewit-review-community-wordpress-theme/full_screen_preview/109666 (left column). Also based on those star reviews, an overall rating should be produced -- both for that individual user review and for the agency/solo practitioner profile overall.
* In addition to star reviews, the registered users should also be able to leave comment-based reviews, much like you'd see on any product site (http://www.bestbuy.com/site/Apple%26%23174;+-+iPad%26%23153;+with+Wi-Fi+-+16GB/9811355.p?skuId=9811355&id=1218178658389#tabbed-customerreviews).
* If possible, I'd like to use a theme of my choice because what's out there for "directory" and "review" sites are hideous.
* A lot of the features in this theme are great -- http://themeforest.net/item/reviewit-review-community-wordpress-theme/109666 -- but again, I don't like the look.

Suggestions for how I can put this together? Thanks in advance!