I think the best way to do it is by using custom post types and the One Click Post plugin. More about that here: http://wordpress.stackexchange.com/questions/381/implementing-a-crunchbase-com-clone-using-wordpress/
My problem:
Lets say we are adding a person to the directory. Name and bio is easy to add aswell as website, hometown, email etc using custom taxonomis. But when it comes to adding companies it gets harder. The form must be extendable if the person has worked for more than one company. How should we do that? And the company name isn't the only info we want, we also want to know how long the person worked there, what his role was and so on.
Anyone have any ideas about this?