This is a great question and one I have invested time considering not only with Salesforce in mind but in the context of business process in general.
Volume - If you are importing large numbers of unqualified leads from external lists then I suggest using leads. They will keep your core account object cleaner especially if you have actual customers as accounts.
Contacts - If your prospect qualification process involves adding multiple contacts then you should consider using accounts. They will allow you to associate multiple contacts with a single account whereas leads are flat and there is no capability to hang a contact off of a lead.
Qualification process - To be successful any organization should have even a basic qualification process and forcing producers to convert an account or mark a prospect as disqualified can have benefits. This achieves two primary objectives. One it reduces the number of prospects, allowing the producer to focus his or her attention on prospects that have a better chance of delivering a sale. In addition by forcing disqualification, and recording why, perhaps with a validation rule associated with a pick-list or notes field, you can help prevent a future rep wasting time trying to qualify this same prospect. Or at the very least passing on intelligence as to why this prospect was disqualified last time around.
Data Hygiene - Since leads are one dimensional it's easier to de-dup or merge them and you won't need to consider the associated contacts and opportunities.
Last Name - On the lead object Salesforce requires you to enter a Last Name on a lead which in my experience can lead to plugging which leads to bad data. Therefore, if your prospects are businesses and not individuals, you need to develop a methodology to handle this scenario.
Merge Functionality - Salesforce has a built in duplicate (dup) finder on the lead object. Remember to use this tool when you need to assign create / delete permissions to the profile, although this might not be ideal from a user security perspective. One work around might be to add a check box that the user can use to mark a record as a perspective dup and then have an administrator use those check boxes to guide them after the fact.
I hope this brief summation will help others who are wrestling with this same issue in their organizations.