What plugin can be used to expand a user profile with doc links,…

We want to add several enrichments to user profiles, including links to documents, photos, and other social media channels. Some of these fields would be editable by the user, some not. The individual would also have control over some of the fields being visible/searchable to other members.

I’d like a page (or sidebar widget) where users could search for other members based on some of these criteria.

On an admin page, we’d like to make reports like this: Full Name, link to FB, link to twitter, etc. If I could also offer the option to download either a PDF or CSV (either from the back end or front end), that would be amazing!

Are we heading into BuddyPress territory or is there some combo of plugins that are better suited?

For a BP neophyte, what/where would you suggest starting?